O comportamento padrão do gunzip é excluir o arquivo .gz após a descompactação.
Como evito que ele exclua o arquivo?
Se essa funcionalidade não estiver incluída, existe um programa alternativo que permita isso?
Estou usando o Ubuntu 9.04
-k
.
O comportamento padrão do gunzip é excluir o arquivo .gz após a descompactação.
Como evito que ele exclua o arquivo?
Se essa funcionalidade não estiver incluída, existe um programa alternativo que permita isso?
Estou usando o Ubuntu 9.04
-k
.
Respostas:
Você está procurando:
gzcat x.txt.gz >x.txt
O gzcat
comando é equivalente ao gunzip -c
qual simplesmente grava o fluxo de saída stdout
. Isso deixará o arquivo compactado intocado. Então você também pode usar:
gunzip -c x.txt.gz >x.txt
Observe que em alguns sistemas o gzcat também é conhecido como sendo zcat
executado assim:
zcat x.txt.gz >x.txt
-k
para manter o arquivo original.
Você pode usar a -c
opção gunzip, que grava a saída em stdout e, em seguida, canaliza-a para o arquivo de sua escolha:
gunzip -c compressed-file.gz > decompressed-file
Uma solução mais simples é usar o gunzip como um filtro como este:
gunzip < myfile.gz > myfile
gunzip
nunca se sabe qual arquivo está recebendo, tudo o que vê é um fluxo de dados; portanto, não é possível alterar o arquivo original.
Se na verdade é um tarball (extensão .tgz ou .tar.gz), em vez de redirecionar para o arquivo como todas as respostas até agora, convém canalizá-lo para o tar, da seguinte maneira:
gunzip -c myfile.tar.gz | tar xvf -
para que você obtenha o conteúdo real.
O gnu tar pode ler arquivos gzip: tar -zxsvf myfile.tar.gz
ou tar -jxzvf myfile.tar.bz2
para arquivos tar bzipados.