No Finder, existe essa maravilhosa capacidade de clicar com o botão direito do mouse em um arquivo ou diretório, selecionar comprimir no menu suspenso e terminar com um arquivo compactado.
É possível fazer a mesma coisa no terminal?
No Finder, existe essa maravilhosa capacidade de clicar com o botão direito do mouse em um arquivo ou diretório, selecionar comprimir no menu suspenso e terminar com um arquivo compactado.
É possível fazer a mesma coisa no terminal?
Respostas:
É chamado zip
.
Isso adiciona o arquivo file
ao arquivo file.zip
:
zip file.zip file
Obviamente, para adicionar mais arquivos, basta adicioná-los como argumentos ao comando. Confira man zip
mais opções.
Freqüentemente, você vai querer pular, incluindo os .DS_Store
arquivos desagradáveis , por exemplo, compactando a pasta inteira folder
em folder.zip
:
zip -vr folder.zip folder/ -x "*.DS_Store"
Copyright (c) 1990-2008 Info-ZIP
. developer.apple.com/legacy/library/documentation/Darwin/…
man zip
na linha de comando
Para compactar os arquivos exatamente como o comando Finder os compactaria, use:
ditto -c -k --sequesterRsrc --keepParent src_directory archive.zip
Veja man ditto
para detalhes:
The command: ditto -c -k --sequesterRsrc --keepParent src_directory archive.zip will create a PKZip archive similarly to the Finder's Compress function- ality.
Existe tar (1) e gzip (ou bzip2 ou lzma). O Tar é usado para rolar vários arquivos em um arquivo morto, enquanto o outro dos três é usado para compactá-lo.
Em uma linha de comando, você chamará o tar com algumas opções para criar um arquivo morto e compactá-lo.
Por exemplo:
tar -c -z -f myarchive.tar.gz -C /home/username Downloads
Este willl -c ag reate -z ipped arquivo chamado f ile do -C diretório hange-pasta-a e conterá todos os arquivos na pasta de downloads. A opção -C é opcional e os argumentos do arquivo de origem serão obtidos da pasta atual se omitidos.
Para referência: tar tutorial