Dateien in einem Verzeichnis einzeln Packen

Alle Dateien in ein Verzeichnis zu packen ist gar nicht schwer. (siehe hier) Aber was wenn jetzt jede Datei ein Archiv werden soll? So gehts:

for i in *; do tar -cvzf $i.tgz $i; done

Mit folgendem Befehl werden die Quelldateien gleich nach dem Packen gelöscht.

for i in *; do tar -cvzf $i.tgz $i; rm $i; done

Selbstverständlich kann man die zu packenden Dateien auch Filtern, indem das * mit z.B. *.log ersetzt wird.