¿Cómo puedo comprimir en un directorio de destino diferente?
¿Cómo puedo comprimir en un directorio de destino distinto al actual?
Esto no funcionó:
gunzip *.gz /putthemhere/
¿Cómo puedo comprimir en un directorio de destino distinto al actual?
Esto no funcionó:
gunzip *.gz /putthemhere/
Pide a gunzip
que salga por la salida estándar y redirija a un archivo en ese directorio:
gunzip -c file.gz > /THERE/file
zcat
es un atajo para gunzip -c
.
Si quiere comprimir varios archivos, itere sobre todos los archivos:
for f in *.gz; do
STEM=$(basename "${f}" .gz)
gunzip -c "${f}" > /THERE/"${STEM}"
done
(aquí se utiliza basename
para obtener la parte del nombre del archivo sin la extensión)
Si necesita extraer un solo archivo y escribir en un directorio propiedad de la raíz, entonces use sudo dd
:
zcat filename.conf.gz | sudo tee /etc/filename.conf >/dev/null
Si el archivo proviene de una fuente remota (es decir, ssh, curl https, etc), puede hacerlo así:
ssh remoteserver cat filename.conf.gz | zcat | sudo tee /etc/filename.conf >/dev/null
(Tenga en cuenta que estos ejemplos sólo funcionan para un solo archivo, a diferencia del ejemplo *.gz, que son todos los archivos comprimidos en el directorio).
Puede probar con > para redirigir el resultado al lugar que desee.