Comment puis-je gunzip dans un répertoire de destination autre que le répertoire actuel?
Cela n'a pas fonctionné:
gunzip *.gz /putthemhere/
Demandez à gunzip
de sortir en sortie standard et de rediriger vers un fichier de ce répertoire:
gunzip -c file.gz > /THERE/file
zcat
est un raccourci pour gunzip -c
.
Si vous voulez gunzip, plusieurs fichiers parcourent tous les fichiers:
for f in *.gz; do
STEM=$(basename "${f}" .gz)
gunzip -c "${f}" > /THERE/"${STEM}"
done
(ici basename
est utilisé pour obtenir la partie du nom de fichier sans l'extension)
Si vous devez extraire un seul fichier et write dans un répertoire appartenant à la racine, utilisez Sudo dd
:
zcat filename.conf.gz | Sudo tee /etc/filename.conf >/dev/null
Si le fichier provient d'une source distante (ssh, curl https, etc.), vous pouvez le faire comme suit:
ssh remoteserver cat filename.conf.gz | zcat | Sudo tee /etc/filename.conf >/dev/null
(Notez que ces exemples ne fonctionnent que pour un fichier single , contrairement à l’exemple * .gz, qui contient tous les fichiers gzippés du répertoire.)
Vous pouvez essayer avec> pour rediriger le résultat vers l'endroit souhaité.