gzip
ou bzip2
comprimirá o arquivo e removerá automaticamente o não compactado (esse é o comportamento padrão).
No entanto, lembre-se de que, enquanto o processo de compactação, os dois arquivos existirão.
Se você deseja compactar arquivos de log (ou seja, arquivos contendo texto), pode preferir bzip2
, pois ele possui uma melhor proporção para arquivos de texto.
bzip2 -9 myfile # will produce myfile.bz2
Comparação e exemplos:
$ ls -l myfile
-rw-rw-r-- 1 apaul apaul 585999 29 april 10:09 myfile
$ bzip2 -9 myfile
$ ls -l myfile*
-rw-rw-r-- 1 apaul apaul 115780 29 april 10:09 myfile.bz2
$ bunzip2 myfile.bz2
$ gzip -9 myfile
$ ls -l myfile*
-rw-rw-r-- 1 apaul apaul 146234 29 april 10:09 myfile.gz
ATUALIZAR como o @Jjoao me disse em um comentário, curiosamente, xz
parece ter uma melhor proporção em arquivos simples com suas opções padrão:
$ xz -9 myfile
$ ls -l myfile*
-rw-rw-r-- 1 apaul apaul 109384 29 april 10:09 myfile.xz
Para mais informações, aqui está uma referência interessante para diferentes ferramentas: http://binfalse.de/2011/04/04/comparison-of-compression/
Para o exemplo acima, eu uso -9
a melhor taxa de compactação, mas se o tempo necessário para compactar os dados for mais importante que a taxa, é melhor não usá-los (use uma opção mais baixa, ou seja -1
, algo entre eles).