Wie kann ich ein Gunzip in ein anderes Zielverzeichnis als das aktuelle durchführen?
Das hat nicht funktioniert:
gunzip *.gz /putthemhere/
Bitten Sie gunzip
, auf Standardausgabe auszugeben und zu einer Datei in diesem Verzeichnis umzuleiten:
gunzip -c file.gz > /THERE/file
zcat
ist eine Abkürzung für gunzip -c
.
Wenn Sie mehrere Dateien gunzipen möchten, iterieren Sie über alle Dateien:
for f in *.gz; do
STEM=$(basename "${f}" .gz)
gunzip -c "${f}" > /THERE/"${STEM}"
done
(Hier basename
wird der Teil des Dateinamens ohne die Erweiterung abgerufen)
Wenn Sie eine einzelne Datei extrahieren und in ein Stammverzeichnis schreiben müssen, verwenden Sie Folgendes
sudo dd
:Wenn die Datei von einer entfernten Quelle stammt (dh ssh, curl https usw.), können Sie dies folgendermaßen tun:
(Beachten Sie, dass diese Beispiele nur für eine einzelne Datei funktionieren , im Gegensatz zum Beispiel * .gz, bei dem es sich um alle gzip-Dateien im Verzeichnis handelt.)
quelle
sudo tee $filename >/dev/null
ist etwas idiomatischer als das Verwenden vondd
.Sie können versuchen, das Ergebnis mit> an den gewünschten Ort umzuleiten.
quelle