Linux - Zip e Unzip
O comando zip é utilizado para comprimir e arquivar arquivos, enquanto unzip serve para extrair e descompactar arquivos de arquivos ZIP.
No formato geral, o comando zip tem a seguinte sintaxe:
zip [OPÇÕES] ARQUIVO ARQUIVOS
O parâmetro ARQUIVO especifica o nome do arquivo ZIP a ser criado, e ARQUIVOS define os arquivos ou diretórios a serem arquivados. Por exemplo:
programicio@Programicio:~$ zip myfiles.zip book.pdf image.png adding: book.pdf (deflated 10%) adding: image.png (deflated 8%)
Neste exemplo, os arquivos book.pdf e image.png do diretório home são adicionados ao arquivo myfiles.zip.
Também é possível definir parâmetros adicionais de compressão. Alguns dos principais são:
- -r: arquiva recursivamente o conteúdo das pastas.
- -d: remove registros do arquivo.
- -u: atualiza arquivos no arquivo ZIP se forem modificados, ou adiciona novos arquivos se não existirem no arquivo.
- -1: compressão rápida, mas com menor qualidade.
- -9: compressão mais lenta, mas com melhor qualidade.
Por exemplo, para arquivar a pasta test no arquivo test.zip:
zip -r test.zip test
O comando unzip, por outro lado, permite descompactar arquivos e, em geral, possui a seguinte sintaxe:
unzip [OPÇÕES] ARQUIVO
O parâmetro ARQUIVO especifica o arquivo ZIP a ser descompactado. Também é possível definir parâmetros adicionais. Alguns dos principais são:
- -l: exibe a lista de componentes do arquivo.
- -f: ao descompactar, sempre sobrescreve os arquivos já existentes com o mesmo nome.
- -n: ao descompactar, nunca sobrescreve arquivos já existentes com o mesmo nome.
- -d: define o diretório de destino para a descompactação.
Por exemplo, para exibir a lista de elementos de um arquivo:
programicio@Programicio:~$ unzip -l myfiles.zip
Archive:  myfiles.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
  11773659  2023-12-01 01:16   book.pdf
    177489  2024-02-26 09:49   image.png
---------                     -------
  11951148                     2 filesPara descompactar o arquivo no diretório atual:
programicio@Programicio:~$ unzip myfiles.zip Archive: myfiles.zip inflating: book.pdf replace image.png? [y]es, [n]o, [A]ll, [N]one, [r]ename: y inflating: image.png
Neste exemplo, o arquivo myfiles.zip está sendo descompactado. Se houver arquivos ou diretórios com o mesmo nome no diretório atual, o comando pedirá uma confirmação para sobrescrever, não sobrescrever ou renomear. Para definir uma ação padrão, use a opção -f (sobrescrever) ou -n (não sobrescrever).
A opção -d permite especificar o diretório para a descompactação. Se o diretório não existir, ele será criado automaticamente:
programicio@Programicio:~$ unzip -d myfiles myfiles.zip Archive: myfiles.zip inflating: myfiles/book.pdf inflating: myfiles/image.png
Neste caso, a descompactação é feita na pasta myfiles.