Criar e editar arquivos zip no Linux usando o terminal

Em um artigo anterior, detalhamos como usar o comando tar para criar arquivos. Embora o tar seja um esquema de compactação muito comum para Linux , não é tão popular para usuários de Windows e Mac OS X , que encontrarão a maioria de seus arquivos criados usando o formato zip.

É fácil usar arquivos Zip (para criar) e Unzip (para expandir) no Linux . Na verdade, a maioria dos programas de gerenciamento de arquivos GUI (como Ark , File Roller e Xarchiver ), funcionará como um frontend para praticamente qualquer programa de arquivamento de linha de comando que você tenha em seu computador, e o Zip não é exceção. Claro, também podemos usar o Zip do Terminal . Aqui está como.

O primeiro passo, como você pode imaginar, é abrir o Terminal .

01Abrir_Terminal

Em seguida, digite “ sudo apt-get install zip unzip ” (sem as aspas), apenas para ter certeza de que temos zip e unzip instalados.

02Install_Zip_and_Unzip

Observação: se esses dois programas já estiverem instalados, você receberá uma mensagem informando que esse é o caso, conforme mostrado acima.(Note: if those two programs are already installed, you’ll receive a message stating this to be the case, as shown above.)

Uma vez instalado, podemos usar o zip para criar arquivos (ou modificar os existentes) e descompactá-los para expandi-los para seus originais. Para este artigo, criaremos uma nova pasta em nossa área de trabalho(Desktop) , chamada Stuff . No Terminal , podemos fazer isso com um único comando – mkdir /home/username/Desktop/Stuff (claro, você substituirá “username” pelo seu próprio nome de usuário, conforme mostrado abaixo, e se você já tiver uma pasta Stuff no seu Desktop , você vai querer mudar o nome).

03Make_Stuff_Directory

Agora que temos uma pasta Stuff , usaremos o comando 'cd' para tornar a pasta Stuff nosso diretório de trabalho atual.

cd /home/username/Desktop/Stuff

Agora, digite touch doc1.txt doc2.txt doc3.txt && mkdir Arquivos(touch doc1.txt doc2.txt doc3.txt && mkdir Files) em seu Terminal , que criará uma pasta chamada Arquivos(Files) , além de três documentos – doc1.txt, doc2.txt e doc3.txt – dentro da pasta Stuff .

04Make_Docs

Mais um comando, para 'cd' na pasta Arquivos recém-criada (cd (Files)Files ), porque vamos querer alguns outros documentos dentro dela.

Arquivos de CD(cd Files)

Por fim, digite touch doc4.txt doc5.txt doc6.txt para criar três novos documentos.

05Make_More_Docs

Agora, digite cd ../.. para alterar a área de trabalho(Desktop) de volta para o diretório de trabalho.

06CD_Back_To_Desktop

Nosso penúltimo passo antes de criar um arquivo zip é criar alguns documentos “extras” na área de trabalho(Desktop) com os mesmos nomes dos arquivos que acabamos de criar, então digite touch doc2.txt doc3.txt para criá-los.

07Criar_Duplicar_Docs

Finalmente, abra cada um dos dois arquivos de texto “extras” e adicione algum texto a eles. Não precisa ser nada significativo (ou longo), só para vermos que esses documentos são realmente diferentes dos já criados dentro das pastas Coisas e Arquivos.(Stuff)

Feito isso, podemos começar a criar nossos arquivos zip. A maneira mais simples de usar o zip é dizer a ele o nome do arquivo zip que você deseja criar e, em seguida, nomear explicitamente cada arquivo que deve entrar nele. Assim, supondo que nosso diretório de trabalho seja o Desktop , zip test Stuff/doc1.txt Stuff/doc2.txt Stuff/doc3.txt para criar um arquivo chamado test.zip (não precisamos usar o arquivo “.zip ” no comando, pois será adicionado automaticamente), que conteria doc1.txt, doc2.txt e doc3.txt conforme encontrado dentro da pasta Stuff .

08Create_First_Archive

Você verá um pouco de saída, que nos informa que três documentos (doc1.txt, doc2.txt e doc3.txt) foram adicionados ao arquivo.

09First_Archive_Output

Podemos testar isso clicando duas vezes no arquivo, que deve estar em nossa área de trabalho(Desktop) . Fazê-lo deve abri-lo no programa de arquivo padrão ( Ark no KDE , File Roller no GNOME e Xarchiver no Xfce ).

10Open_In_Archive_Program

Agora, e a pasta Arquivos? Supondo que queremos, adicione os documentos dentro dele, em nosso arquivo também, podemos usar o mesmo comando acima, mas adicione Stuff/Files/* ao final do comando.

11Add_To_Archive

O asterisco significa incluir tudo dentro da pasta. Portanto, se houvesse outra pasta dentro da pasta Arquivos(Files) , ela também teria sido adicionada. No entanto, se essa pasta tiver itens dentro dela, eles não serão incluídos. Para fazer isso, precisaríamos adicionar -r (que significa recursivo ou recursivo).

12Adicionar_Recursivamente

Deve-se notar que os dois comandos acima não são projetados para “adicionar” arquivos a um arquivo zip; eles são projetados para criar um. No entanto, como o arquivo já existe, o comando simplesmente adiciona novos arquivos ao arquivo existente.  Quisemos(Had) criar este arquivo de uma só vez (em vez das três etapas que executamos para adicionar arquivos gradualmente a ele para fins educacionais), poderíamos simplesmente digitar zip -r test Stuff/* e teríamos criado o mesmo arquivo.

13Criar_Recursivamente

Você notará no comando e na saída que os três arquivos dentro da pasta Stuff estão incluídos, assim como os três documentos dentro da pasta Files , então tudo foi feito em um comando simples e agradável.

Agora, e aqueles dois documentos “extras” que criamos em nosso DesktopBem(Well) , a maneira como o zip funciona é se você tentar adicionar um arquivo a um arquivo que já existe no arquivo, os novos arquivos substituirão os antigos. Assim, como os documentos que criamos em nossa área de trabalho(Desktop) (doc2.txt e doc3.txt) têm conteúdo (adicionamos “hello world!” ao doc2.txt e “yay” ao doc3.txt), devemos ser capazes de adicionar esses documentos e poder testar isso.  Primeiro(First) , arrastaremos os dois documentos “extras” para a pasta Stuff .

Você provavelmente será perguntado se deseja que os novos documentos sobrescrevam os existentes (isso está na pasta, lembre-se, não no arquivo zip), então deixe isso acontecer.

Agora que isso está feito, vamos adicioná-los ao arquivo digitando zip test Stuff/doc2.txt Stuff/doc3.txt

14Adding_Files_To_Archive

Você notará que o comando acima agora mostra os arquivos sendo atualizados em vez de adicionados. Se agora verificarmos o arquivo, veremos que os arquivos parecem ser os mesmos, mas quando doc2.txt e doc3.txt forem abertos, você verá que agora eles têm conteúdo, em vez de estarem em branco como nossos arquivos originais estavam.

Às vezes, no Linux , você verá que alguns arquivos estão ocultos adicionando um ponto (“.”) ao início do nome do arquivo. Isso é particularmente comum para arquivos de configuração, que precisam existir, mas muitas vezes não são visíveis (o que facilita a confusão e torna menos provável que um arquivo de configuração seja excluído acidentalmente). Podemos adicioná-los a um arquivo zip com bastante facilidade.  Primeiro(First) , vamos supor que queremos criar um arquivo zip chamado backup de todos os arquivos em um diretório. Podemos fazer isso digitando zip backup * no Terminal.

15Add_All_Files

Isso adicionará todos os arquivos e pastas, embora nenhum item dessas pastas seja incluído. Para adicioná-los, adicionaríamos -r novamente, para que zip -r backup * fosse o comando.

16Add_Files_Recursively

Agora estamos quase lá. Para adicionar recursivamente pastas, arquivos e arquivos ocultos, o comando é realmente muito simples: zip -r backup .

17Add_Files_Recursively_And_Hidden

Agora, descompactar é muito fácil. Antes de fazer qualquer coisa, no entanto, vá em frente e exclua os documentos na área de trabalho(Desktop) (doc2.txt e doc3.txt), bem como a pasta Stuff . Quando eles terminarem, digitar unzip test.zip expandirá o conteúdo do nosso arquivo compactado original para o diretório atual.

18Unzip_Archive

Nota: Se não tivéssemos apagado os documentos, estaríamos tentando descompactar o conteúdo do nosso arquivo zip em um arquivo existente, então seria perguntado se queríamos substituir todo e qualquer documento.

E é isso! Compactar e descompactar(Unzipping) é uma tarefa bastante comum e, embora certamente existam opções de GUI disponíveis, com a prática, você descobrirá que executar essas mesmas tarefas no Terminal também não é muito difícil.



About the author

Eu sou um programador de computador, e tenho sido há mais de 15 anos. Minhas habilidades estão no desenvolvimento e manutenção de aplicativos de software, além de fornecer suporte técnico para esses aplicativos. Também ensinei programação de computadores para alunos do ensino médio e atualmente sou instrutor profissional.



Related posts