O comando tar é comumente usado para comprimir arquivos no Linux. Por definição, as extensões de arquivos gerados são o tar.gz e o tar.bz2. Neste tutorial, eu irei mostrar alguns exemplos de uso do comando tar; que irá facilitar seu trabalho na hora de comprimir ou extrair arquivos no Linux.
O comando
O comando tar é disponível por padrão na maioria das distros Linux; e não será preciso instalá-lo, separadamente.
1. Extrair um arquivo tar.gz
Para extrair arquivos comprimidos com extensão tar.gz, execute no terminal:
Onde,
x - Extrai arquivos v - verbose, exibe o nome dos arquivos extraídos (um por um) z - O formato do arquivo é "gzip" (tar.gz) f - Use the following tar archive for the operation
Esses parâmetros são importantes para memorizar.
Agora, para extrair formato tar.bz2/bzip, execute no terminal:
Onde é preciso alterar o parâmetro ‘z’ pelo ‘j’:
j - O formato do arquivo é "bzip" (tar.bz2)
2. Extrair arquivos para uma pasta ou arquivo específico
Para extrair os arquivos, alterando seu destino; apenas especifique o parâmetro ‘C’:
Entretanto,verifique se a pasta de destino existe. Caso contrário, o comando tar não criará.
3. Extrair apenas um arquivo
Para extrair apenas um arquivo, execute o comando tar informando o nome do arquivo ao final do comando, como segue:
4. Extrair arquivos conformes sua extensão
Por exemplo, caso queira extrair apenas arquivos com extensão “txt”; execute no terminal:
RECOMENDO QUE LEIA 20 comandos Linux que você talvez não conheça Comandos Linux: Dominando o ifconfig
5. Exibir o conteúdo do arquivo comprimido
Caso deseje apenas exibir (e não extraí-los) o conteúdo do arquivo comprimido, use o parâmetro ‘t’. Por, exemplo, execute esse comando:
tar -tz -f abc.tar.gz ./home/ ./home/cde.txt ./home/linux10complica/ ./home/linux10complica/in.txt ./home/abc.txt ...
Caso queira pesquisar determinado arquivo, use o comando auxiliar “grep”:
tar -tvz -f abc.tar.gz | grep abc.txt -rw-rw-r-- usuario/grupo 0 2015-05-16 11:40 ./home/abc.txt
6. Criar arquivo comprimido em formato gzip/bzip2
Depois de ter visto como extrair os arquivos comprimidos, agora é importante aprender como comprimir.
Por exemplo, para comprimir, os arquivos da pasta /home/linux10complica, em um arquivo tar.gz; execute o comando:
tar -cvzf abc.tar.gz /home/linux10complica ./home/linux10complica/ ./home/linux10complica/cde.txt ./new/linux10complica/abc.txt
Por fim, para comprimir, os arquivos da pasta /home/linux10complica, em um arquivo tar.bz2; execute o comando:
tar -cvjf abc.tar.bz2 ./home/linux10complica
7. Confirmar, antes de comprimir arquivos
Um parâmetro importante do comando tar, para comprimir arquivos, é o ‘w’. Ele faz com que seja confirmado se cada arquivo da pasta deve ser comprimido, realmente.
Os arquivos da pasta só serão comprimidos se você confirmar com resposta positiva ('y'). O padrão serão não comprimir o arquivo.
$ tar -czw -f abc.tar.gz ./home/* add ‘./home/abc.txt’? y add ‘./home/cde.txt’? y add ‘./home/novo.txt’? n add ‘./home/linux10complica’? y add ‘./home/linux10complica/in.txt’? n
8. Adicionar arquivos em formatos já comprimidos
Caso queira adicionar um arquivo a outro já comprimido, execute:
tar -rv -zf abc.tar abc.txt
9. Faça backup dos seus arquivos
Um cenário comum, é realizar backups regularmente usando o comando tar. Por exemplo:
tar -cvz -f arquivo-$(date +%Y%m%d).tar.gz ./home/linux10complica
Executar o comando acima, resulta em: 'arquivo-20150516.tar.gz'. No caso, a data atual do sistema ANOMESDIA
10. Verifique os arquivos no momento da criação
Enquanto estiver no processo de criação do arquivo .tar, você pode verificar a integridade dos arquivos da pasta. Execute o comando:
tar -cvW -f abc.tar ./home/ ./home/ ./home/cde.txt ./home/linux10complica/ ./home/linux10complica/in.txt ./home/newfile.txt ./home/abc.txt Verify ./home/ Verify ./home/cde.txt Verify ./home/linux10complica/ Verify ./home/linux10complica/in.txt
Somente quando utilizar arquivos em formato '.tar' essa operação poderá ser realizada.
Encontrei na internet
10 quick tar command examples to create/extract archives in Linux
Boas dicas. Eu criei um backup do meu sistema com o comando abaixo
sudo rsync -aAXv –exclude={“/home/.cinnamon”,”/dev/*”,”/proc/*”,”/sys/*”,”/tmp/*”,”/run/*”,”/mnt/*”,”/media/*”,”/lost+found”} /* /home/.cinnamon. Como faço para criar um arquivo comprimido tar.gz dessa pasta /home/.cinnamon presevando as permissões arquivos? E qual a linha de comando para descompactar o arquivo comprimido?
Olá, quando dou o comando xzf ele diz que o comando “Z” nao existe.. que que eu faço?