Como compactar um arquivo no UNIX?

7

Eu quero fazer um " zip " comum, então meu arquivo CW3 se torna CW3.zip . Eu tentei usar alguns exemplos de comandos encontrados na internet, mas eles não parecem funcionar.

Eu tentei o seguinte, resultando no erro abaixo:

$ zip CW3
zip error: Nothing to do! (CW3.zip)

Eu também tentei:

compress -If CW3

Bottomline: como faço para compactar um arquivo no UNIX?

    
por Duijf 31.03.2011 / 18:53

4 respostas

7

a sintaxe zip é

zip archivefile1 file1 file2 file3

para compactação,

unzip archivefile1

para descompressão.

Então, no seu caso, para compactação:

zip CW3.zip CW3

Veja aqui .

    
por 31.03.2011 / 19:00
3

Se você é flexível sobre o formato, você pode compactar um arquivo no Unix fazendo exatamente isso: -)

 compress some_file

desvantagem: você precisa especificar cada arquivo para compactar.

Você também pode usar zip , nem sempre disponível em plataformas UNIX ou gzip. Enquanto compress e gzip apenas compactam um único arquivo, zip é uma ferramenta que manipula o empacotamento de um ou mais arquivos ou diretórios e compactação de uma só vez. A filosofia tradicional do UNIX é ter uma ferramenta para um trabalho, tornando mais fácil para o criador da ferramenta fazer com que a ferramenta seja excelente em um único trabalho, explicando porque compress e gzip compactam apenas e não empacotam. Para você, como usuário, isso significa que você usará uma ferramenta para empacotamento e outra para compactar o pacote (ou "arquivamento"), se você não estiver usando zip, mas% nativa tar do UNIX, o arquivador de fita, para empacotar primeiro:

tar -c -f archive_name.tar some_file some_dir

irá empacotar some_file e some_dir , recursivamente, no arquivo archive_name.tar .

agora comprima:

gzip archive_name.tar

fornecerá o arquivo compactado archive_name.tar.gz (e excluirá o original archive_name.tar ).

Mas, espere, há mais: na verdade, é tão comum compactar arquivos, que o tar pode chamar gzip, em um comando:

tar -c -z -f archive_name.tar.gz some_file some_dir

fornecerá archive_name.tar.gz , contendo some_file e some_dir , empacotados recursivamente e compactados.

Para mais informações:

man 1 tar
    
por 31.03.2011 / 19:42
1

zip geralmente não é instalado por padrão. É mais uma ferramenta de arquivamento do que uma única ferramenta de compactação de arquivos.

O gzip ou compress deve ser instalado. São ferramentas de compactação de arquivos que adicionam uma extensão .gz ou .Z ao arquivo compactado. O programa bzip2 também pode ser instalado.

gzip e bzip2 geralmente são instalados com um conjunto de programas nos arquivos cat , diff ou grep . Estes seriam zcat , zdiff e zgrep ou bzcat , bzdiff e bzgrep , respectivamente.

    
por 31.03.2011 / 19:29
0

Existem muitas maneiras de fazer

primeira maneira: zip            exemplo zip cw3.zip * .sh

O comando acima irá zipar todos os arquivos * .sh em cw3.zip

segunda maneira: Se você quiser zipar todos os arquivos que estão em sub-diretórios também            zip -r            exemplo zip cw3.zip * .sh

    
por 02.09.2015 / 08:56