O comando tar vem pré-instalado em quase todas as distribuições Linux existentes. Então, está pronto quando você precisar.
Neste artigo, vou mostrar como usar o comando tar do Linux para compactar e descompactar arquivos compactados. Então vamos começar.
Eu tenho um diretório ~ / projetos no meu diretório inicial. Eu tenho os seguintes arquivos e diretórios no diretório ~ / projects. Usarei esses arquivos e diretórios para demonstrar como criar arquivos compactados com o comando tar neste artigo.
Para criar um arquivo tar de tudo no ~ / projeto diretório, execute o comando tar da seguinte maneira:
$alcatrãoprojeto cvf project.tar
O arquivo project.tar deve ser criado.
Como você pode ver, o arquivo compactado project.tar é criado. Tem 51 MB de tamanho.
Por padrão, o arquivo tar não é compactado. Mas, se você quiser, pode compactar o conteúdo do arquivo usando gzip e bzip2 algoritmo.
Para realizar a compactação gzip no exemplo anterior, você deve usar o -Com opção do comando tar da seguinte forma:
$alcatrãoxvzf project.tar.gz poject/
project.tar.gz arquivo deve ser criado. Como você pode ver, o tamanho do arquivo é ligeiramente menor do que a versão não compactada. No cenário da vida real, você obterá melhores resultados porque eu gerei esses arquivos usando o / dev / urandom e dd comandos. Portanto, os algoritmos de compressão não funcionaram tão bem.
Para realizar a compactação bzip2 no exemplo anterior, você deve usar o -Com opção do comando tar da seguinte forma:
$alcatrãoprojeto cvjf project.tar.bzip2/
Como você pode ver, o project.tar.bzip2 arquivo é criado.
Compactando arquivos e diretórios específicos:
Você não precisa compactar um diretório se não quiser. Você pode especificar arquivos e diretórios diferentes em caminhos diferentes (relativos ou absolutos) no comando tar e compactá-los da seguinte maneira:
$alcatrãocvzf important_etc.tar.gz/etc/virc/etc/projeto fstab/projeto test1.txt/docs
Os arquivos e diretórios especificados são compactados em um arquivo compactado é important_etc.tar.gz .
Excluindo arquivos e diretórios:
Quando você precisa compactar um diretório inteiro com o comando tar e não deseja incluir alguns arquivos e diretórios, você pode usar o -excluir opção do comando tar da seguinte forma:
$alcatrãocvzf project.tar.gz--excluir= projeto/docs--excluir= projeto/projeto test.img/
Como você pode ver, o test.img arquivo e docs / diretório incluindo seu conteúdo são excluídos do arquivo.
Listando o conteúdo de um arquivo tar:
Antes de extrair um arquivo tar, é sempre uma boa ideia conhecer a estrutura de arquivos e diretórios de um arquivo tar. Você pode listar todos os arquivos e diretórios dentro de um arquivo tar com o seguinte comando:
$alcatrãotf project.tarComo você pode ver, a estrutura de arquivos e diretórios do arquivo tar é impressa.
Para ver as permissões de arquivo e diretório e outras informações sobre os arquivos e diretórios dentro de um arquivo tar, execute o comando tar da seguinte maneira:
$alcatrãotvf project.tarComo você pode ver, o conteúdo do arquivo tar e muitas informações sobre cada arquivo e diretório são listados.
Extraindo arquivos de alcatrão:
Para extrair um arquivo tar, você deve saber se o arquivo está compactado ou não. Se o arquivo estiver compactado, você também deve saber qual algoritmo de compactação é usado para compactar o arquivo.
Normalmente, você encontra essas informações no nome do arquivo. Se o nome do arquivo termina com .alcatrão , então por convenção este é um arquivo tar e não está compactado.
Se o nome do arquivo terminar com .tar.gz , então é um arquivo compactado gzip.
Se o nome do arquivo terminar com .tar.bzip2 , então é um arquivo compactado bzip2.
Ainda assim, as pessoas podem usar qualquer extensão de arquivo que desejem para representar o arquivo tar. Nada os está impedindo. Portanto, a melhor maneira é usar o Arquivo comando.
Para encontrar informações sobre um arquivo (digamos project2.tar ), execute o Arquivo comando da seguinte forma:
$Arquivoproject2.tarComo você pode ver, mesmo que a extensão do arquivo não esteja configurada corretamente, o comando file ainda diz que é um arquivo compactado gzip.
Agora, para extrair o arquivo tar não compactado project.tar que você acabou de criar em seu diretório de trabalho atual, execute o seguinte comando:
$alcatrãoxvf project.tarEste comando irá extrair o arquivo em seu diretório de trabalho atual.
Se você deseja extrair o arquivo para algum outro diretório, digamos ~ / Downloads , em seguida, execute o comando tar da seguinte maneira:
$alcatrãoxvf project.tar-C~/TransferênciasNOTA: O diretório para o qual você está extraindo o arquivo deve existir antes de executar o comando. Caso contrário, o tar não será capaz de extrair o arquivo. Portanto, certifique-se de que o diretório exista e, se não existir, crie o diretório com o comando mkdir.
O arquivo project.tar é extraído no diretório ~ / Downloads.
Como você pode ver, o conteúdo do arquivo agora está disponível no diretório ~ / Downloads.
Se o arquivo for compactado com gzip, use o -Com opção ao extrair o arquivo da seguinte forma.
$alcatrãoxvzf project.tar-C~/TransferênciasSe o arquivo for compactado em bzip2, use o -j opção ao extrair o arquivo da seguinte forma.
$alcatrãoxvjf project.tar-C~/TransferênciasConseguindo ajuda:
O comando tar possui várias opções. Não é possível cobrir todos eles neste artigo. Mas, você pode ler a página de manual do comando tar para aprender mais sobre ele. Eu mostrei como começar com o comando tar neste artigo. Agora, você deve ser capaz de seguir em frente por conta própria.
Para abrir a página de manual do comando tar, execute o seguinte comando:
$cara alcatrão
Então, é assim que você usa o comando tar no Linux. Obrigado por ler este artigo.