Normalmente, descomprimir restaura el nombre y la fecha del archivo original (cuando fue comprimido); Esto no sucede con -c.
Si desea que el archivo comprimido y el archivo sin comprimir tengan el mismo nombre, no puede hacerlo directamente, debe cambiar el nombre del archivo comprimido o cambiar el nombre del archivo sin comprimir. En particular, gzipelimina y recrea su archivo de destino, por lo que si necesita modificar el archivo en su lugar porque no tiene permiso de escritura en el directorio, debe usarlo -co redireccionarlo.
cp somefile /tmp
gunzip </tmp/somefile >|somefile
Tenga en cuenta que gunzip <somefile >somefileno funcionará, porque el gunzipproceso vería un archivo truncado a 0 bytes cuando comience a leer. Si pudiera invocar el truncamiento, entonces gunzipretroalimentaría su propia salida; De cualquier manera, este no se puede hacer en su lugar.
Ahora no puede hacer eso y descomprimir el mismo nombre de archivo. Deberá cambiar el nombre del archivo sin comprimir después (es decir, no puede descomprimir in situ de esa manera).
Respuestas:
Puede pasar la
-S
opción de usar un sufijo que no sea.gz
.Si desea que el archivo descomprimido tenga otro nombre, ejecute
(estos comandos son equivalentes).
Normalmente, descomprimir restaura el nombre y la fecha del archivo original (cuando fue comprimido); Esto no sucede con
-c
.Si desea que el archivo comprimido y el archivo sin comprimir tengan el mismo nombre, no puede hacerlo directamente, debe cambiar el nombre del archivo comprimido o cambiar el nombre del archivo sin comprimir. En particular,
gzip
elimina y recrea su archivo de destino, por lo que si necesita modificar el archivo en su lugar porque no tiene permiso de escritura en el directorio, debe usarlo-c
o redireccionarlo.Tenga en cuenta que
gunzip <somefile >somefile
no funcionará, porque elgunzip
proceso vería un archivo truncado a 0 bytes cuando comience a leer. Si pudiera invocar el truncamiento, entoncesgunzip
retroalimentaría su propia salida; De cualquier manera, este no se puede hacer en su lugar.fuente
Puedes hacer algo como:
Ahora no puede hacer eso y descomprimir el mismo nombre de archivo. Deberá cambiar el nombre del archivo sin comprimir después (es decir, no puede descomprimir in situ de esa manera).
fuente
gzip
pero nogunzip
...zcat
:)