In dired+
in Emacs 23.2.1 auf einer Debian Squeeze-Variante Ich habe vier Dateien mit *
ausgewählt und dann Z
gedrückt, um sie zu komprimieren. Ich antwortete y
auf die Eingabeaufforderung und sah einige Statusaktualisierungen im Mini-Puffer. Wo finde ich die komprimierte Datei? Ich habe auf eine Datei getestet ( C-u
Z
) und Emacs hat gzip auf der einen Datei ausgeführt und daraus eine .gz Datei gemacht. Wie komprimiere ich markierte Dateien in Emacs [tar and]?
(Um irgendwelche philosophischen oder methodologischen Diskussionen über tar, gzip, andere Formate und Archive im Allgemeinen zu verhindern, will ich nur die vier Dateien, die als komprimierte Daten in einer Datei gespeichert werden sollen. Wenn das über tar und gzip oder es ist nicht wichtig, jede direkt in ein Archiv zu komprimieren.)
Wenn dired+
etwas wie dired
ist, können Sie die Dateien mit m markieren und dann ! drücken (um einen Shell-Befehl für die markierten Dateien auszuführen) und geben Sie den Befehl als tar -czf foo.tar.gz *
an (der *
ist ein spezieller Marker, der durch die Namen der markierten Dateien ersetzt wird).
Sie können Dateien auch archivieren, indem Sie sie einfach markieren und in eine Archivdatei kopieren.
Markieren Sie beispielsweise mehrere Dateien in dired und wählen Sie m-x dired-do-copy
.
Wenn Sie nach dem Ziel gefragt werden, geben Sie test.zip
ein. Die Dateien werden automatisch dem Zip-Archiv hinzugefügt.
Sie können Dateien auch dekomprimieren, indem Sie sie in dired auswählen und den Befehl dired-do-extract
Um dies einzurichten, sehen Sie sich die folgenden Variablen an: Dired-zu-Archiv-Kopie-Alist Dired-Extrakt-Alist
Hier ist mein Setup, das mir seit vielen Jahren gedient hat ...
%Vor%Plattform: Ubuntu
Anforderungen
System:
sudo apt-get installieren atool
Emacs:
M-x Paketlistenpakete
C-s Dired-Atool RET
ich bin
x
Lösung
1) Markieren Sie die Dateien im dired-Puffer.
2) M-x Dired-Atool-Do-Pack
HINWEIS: Stellen Sie sicher, dass Shell-Dateiname auf "/ bin / bash" gesetzt ist.