Início·Comandos de terminal

tar

Compactação

Uso

tar -czf <archive.tar.gz> <path>

Junta arquivos em um só pacote, mas não comprime por conta própria: quem faz isso é `-z` (gzip), `-j` (bzip2) ou `-J` (xz); escolha exatamente um entre `-c` para criar, `-x` para extrair e `-t` para listar, e deixe `-f` como última opção, pois o nome do pacote vem logo depois dele.

Opções comuns

OpçãoSignificado
-c / -x / -tCreate / extract / list. Exactly one of the three, and it comes first.
-f <file>The archive name, and it must be the last flag before that name.
-z / -j / -Jgzip / bzip2 / xz. GNU tar detects the format when extracting, so -z is optional with -x.
-vPrint the file names as they go past.
-C <dir>Change into that directory first. Position in the command line matters.
--exclude='node_modules'Skip matching paths. Write it before the source paths.
--strip-components=1Drop the top-level directory when extracting.
--zstdUse zstd instead of gzip (GNU tar 1.31 and newer).

Exemplos

tar -czf site.tar.gz -C /var/www .

Archive the contents of a directory without the leading path.

tar -xzf site.tar.gz -C /tmp/restore

Extract into a directory that already exists.

tar -tzf site.tar.gz | head

Look inside before extracting, so nothing lands in $PWD by surprise.

Empacotar e compactar são coisas diferentes: tar empacota, gzip encolhe e .tar.gz é os dois.

Como ler

  • Os colchetes [ ] marcam uma parte que você pode omitir.
  • As reticências … indicam que você pode listar vários.
  • As opções diferenciam maiúsculas: em alguns comandos -r e -R fazem coisas diferentes.

Perguntas

Q. O que tar faz?

Junta arquivos em um só pacote, mas não comprime por conta própria: quem faz isso é `-z` (gzip), `-j` (bzip2) ou `-J` (xz); escolha exatamente um entre `-c` para criar, `-x` para extrair e `-t` para listar, e deixe `-f` como última opção, pois o nome do pacote vem logo depois dele.

Q. Como se digita?

tar -czf <archive.tar.gz> <path> — os colchetes marcam o que você pode omitir.

Q. Quantas opções vale a pena saber?

Aqui estão 8; a lista completa está em man tar. Este comando fica em Compactação.

Comandos relacionados

página man: man tar