El gzcatcomando es equivalente al gunzip -cque simplemente escribe la secuencia de salida stdout. Esto dejará el archivo comprimido intacto. Entonces también puedes usar:
gunzip -c x.txt.gz >x.txt
Tenga en cuenta que, en algunos sistemas, gzcat también se conoce como zcatejecutar así:
Gracias por la respuesta. Al crecer con pkunzip en DOS, me resulta tan extraño que no hay una opción para mantener el archivo. Especialmente con una herramienta como gzip que se usa tanto ... simplemente extraño.
Sen
44
FYI, en realidad no tengo gzcat. Ni mi sistema local ni el sistema en el que me metieron. Entonces, tengo que usar gunzip -c
Sen
26
probablemente sea solo zcat en su sistema.
user23307
2
Una opción adicional para mantener el archivo sería realmente buena. Por ejemplo, b (un) zip2 usa una sintaxis similar y permite simplemente agregar -kpara mantener el archivo original.
schnaader
1
También puede agregar la línea alias gzcat = "gunzip -c" a su .bashrc
James Kingsbery
55
Puede usar la -copción de gunzip que escribe la salida en stdout y luego canalizarla al archivo de su elección:
Por cierto, tenga en cuenta que la página del manual mencionada anteriormente enumera una opción -k, lo que significa mantener los archivos de entrada. Tal vez esto funcione en la versión BSD, pero no en la mía, por lo que la solución -c parece ser la correcta.
31
Una solución más simple es usar gunzip como un filtro como este:
Creo que esta es la forma más limpia ya que gunzipnunca sabe qué archivo está obteniendo, todo lo que ve es un flujo de datos, por lo que no es posible alterar el archivo original.
Walf
12
Si en realidad es un tarball (extensión .tgz o .tar.gz), en lugar de redirigir a un archivo como todas las respuestas hasta ahora, querrás canalizarlo a tar, de esta manera:
-k.Respuestas:
Estas buscando:
El
gzcatcomando es equivalente algunzip -cque simplemente escribe la secuencia de salidastdout. Esto dejará el archivo comprimido intacto. Entonces también puedes usar:Tenga en cuenta que, en algunos sistemas, gzcat también se conoce como
zcatejecutar así:fuente
-kpara mantener el archivo original.Puede usar la
-copción de gunzip que escribe la salida en stdout y luego canalizarla al archivo de su elección:Más detalles en la página del manual .
fuente
Una solución más simple es usar gunzip como un filtro como este:
fuente
gunzipnunca sabe qué archivo está obteniendo, todo lo que ve es un flujo de datos, por lo que no es posible alterar el archivo original.Si en realidad es un tarball (extensión .tgz o .tar.gz), en lugar de redirigir a un archivo como todas las respuestas hasta ahora, querrás canalizarlo a tar, de esta manera:
para que obtengas el contenido real.
fuente
Use la
-copción para descomprimir el archivo a stdout. No tocará el archivo original.fuente
O
Comentarios:
fuente
Gnu tar puede leer archivos gzip:
tar -zxsvf myfile.tar.gzotar -jxzvf myfile.tar.bz2para archivos tar bzipped.fuente