Como posso usar o comando tar para agrupar arquivos sem compactação?

47

Eu tenho uma pasta muito grande de mais de 120.000 arquivos. e preciso movê-los para outro local na mesma máquina (mesma partição).

Gostaria de usar o comando tar para agrupá-los como uma única unidade e, em seguida, mv para o local final.

Qual comando preciso executar para tar todos juntos e não comprimir nada (preciso do resultado mais rápido).

    
por sergserg 08.01.2013 / 16:38

2 respostas

67

tar não é compactado por padrão, apenas não adicione uma opção de compactação:

tar cvf myfolder.tar myfolder

Estou incluindo comentário do Hennes na minha resposta, pois adiciona informações úteis:

TAR (tape archive) is originally a unix program used to create archives on tape. Since all devices are treated as files under unix it is easy not to write to a tape but to a file instead. This is usually done with the -f flag. The command tar cvf myfolder.tar myfolder means tar, create, verbose file filename_to_create what_to_tar. There is no compression in this anywhere. Tar archives (as files) where often compressed using the compress program and gained the extention .Z (e.g. file.tar.Z). Later on this got included in gtar with the z flag

    
por 08.01.2013 / 16:49
1

A resposta do @terdon está certa.

Mas cometi um pequeno erro fazendo tar cvf myfolder.tar.gz myfolder . Eu queria os mesmos nomes finais para os arquivos no mesmo caminho tar.gz mesmo quando não está compactado.

Então, se você colocar algo como .gz, .z no final do nome do arquivo que está tentando tar, o aplicativo tar entenderá que você deseja usar alguma compactação e será aplicado de acordo com o que você colocar (gz = gzip).

Portanto, se você quiser usar uma extensão como tar.gz , use o sinalizador --no-auto-compress

--no-auto-compress    do not use archive suffix to determine the compression 
program
    
por 27.04.2018 / 06:26

Tags