[Kommandozeile] Mehrere Dateien einzeln und auf einmal packen

SoKoBaN

B.Ohlsen der alte Schwede
Teammitglied
Mehrere Dateien einzeln und auf einmal packen

Wie kann ich es anstellen, das ich viele Dateien, unter dem selben Namen und in einem Rutsch einzeln packen kann?
Ich hab mir jetzt die Manpage von gzip und bzip angesehen, bin aber nicht schlau draus geworden.
 
Dreck...bei Winrar kann ich doch auch angeben, "jede Datei in ein unterschiedliches Archiv sichern".
Muss doch auch beim Pinguin gehen...oder?
 
So, ich habe mal etwas gebastelt:
Code:
for file in *.txt;do tar -cj -f$file.tar.bz $file;done

Bei einem Verzeichnis mit mehreren Dateien, die auf *.txt aufhöhren, packt dieser Befehl jede einzelne Datei in ein eigenes *.txt.tar.bz Verzeichnis.

Tar.bz ist stärker komprimiert als gzip, läßt sich mit jedem gängigen Packprogramm (winrar, winzip, 7zip...) öffnen.

Alternativ:
Code:
mkdir archive 
for file in *.txt;do tar -cj -f./archive/$file.tar.bz $file;done

Packt die Archive in das Unterverzeichnis archive.

Diese Befehle habe ich auf meinem Desktop erfolgreich getestet, aber ich übernehme keine Verantwortung dafür!
Mach für die UT-Demos lieber eine Sicherheitskopie ;)


MfG, Bio
 
Funktioniert (y)
Du seinen grosser weiser Mann :D

Muss das noch "getart" werden?
Normal müsste bei einer Datei, bzip ausreichend sein, oder?
Tar bringt doch nur was bei vielen Dateien, zumindest hab ich das so verstanden.
 
So, wenn man schon beim basteln ist :D

Code:
for file in *.txt;do tar -cj -f./archive/"$(basename "$file" .txt)".tar.bz $file;done

Erzeugt Archive mit dem Dateinamen *.tar.bz, läßt also das txt im Archivnamen weg.
 
Oben