Ich habe eine große Anzahl von Dateien mit Erweiterungen wie .0_1234 .0_4213und .0_4132usw. Einige davon sind gzipkomprimiert und andere sind rohe E-Mails. Ich muss feststellen, welche Dateien komprimiert sind, diese dekomprimieren und alle Dateien in eine gemeinsame Erweiterung umbenennen, sobald alle komprimierten Dateien dekomprimiert sind. Ich habe festgestellt, dass ich mit dem Befehl file bestimmen kann, welche komprimiert werden sollen, dann die Ergebnisse sedabrufen und die Ausgabe auf eine Liste von Dateien reduzieren kann, aber nicht bestimmen kann, wie die scheinbar zufälligen Erweiterungen dekomprimiert werden sollen. Folgendes habe ich bisher
file *|grep gzip| sed -e 's/: .*$//g'
Ich möchte xargsoder etwas verwenden, um die Liste der in der Ausgabe bereitgestellten Dateien zu übernehmen und sie entweder umzubenennen, .gzdamit sie dekomprimiert werden können, oder sie einfach inline zu dekomprimieren.