Esta dica é bastante simples, mas útil. Não é um truque ou nada extravagante, mas apenas algo que eu de alguma forma não sabia há muito tempo que eu gostaria de ter. Uma coisa comum a fazer no Linux / Unix / Whateverix é fazer o download de um arquivo de tar que foi gzipado e, em seguida, extrair e descompactá-lo. Então você pode fazer algo assim:


gunzip myfile.tar.gz
tar -xvf myfile.tar

O primeiro comando é descompactado. O segundo comando extrai o arquivo tar. O que eu não sabia é que você pode combinar tudo isso em um simples comando! Basta fazer o seguinte:


tar -zxvf myfile.tar.gz

Você pode usar também estes outros comandos úteis:

-[0-7][lmh]
Especifica unidade e densidade. (Se você não tem certeza do que isso significa, não precisa usar essa opção).
-a, --auto-compress
Use o sufixo do arquivo para determinar o programa de compressão . Por exemplo, se esta opção for especificada, um arquivo com a extensão .tar.gz sempre será tratado como se a opção –gzip tivesse sido especificada (veja –gzip , abaixo).
--add-file=file
Adicione arquivo ao arquivo. (Esta opção é especialmente útil quando o nome do arquivo começa com um traço.)
--anchored
Os padrões de nome de arquivo devem coincidir com o início de um nome de arquivo.
--no-anchored
Os padrões de nome de arquivo podem corresponder após qualquer ” / ” (este é o padrão para excluir arquivos, veja –exclua , abaixo).
--atime-preserve
Preservar os tempos de acesso nos arquivos arquivados, seja ao restaurar os horários, ou (se o sistema operacional o suportar) não os alterando em primeiro lugar.
--no-auto-compress
Não determine automaticamente o programa de compressão usando o sufixo do nome do arquivo.
-b, --blocking-factor BLOCKS
Use BLOCKS x 512 bytes -per-record quando manipula o arquivo.
-B, --read-full-records
“Re-bloquear” toda a entrada. Esta opção pode ajudar a ler arquivos danificados.
--backup[=backup-method
Em vez de excluir arquivos do sistema de arquivos, o tar osfará backup usando o método de backup do método de backup especificado , que pode ser um dos seguintes:

t , numerados Sempre faça backups numerados. Nulo , existente Faça backups numerados de arquivos que já os tenham, e backups simples dos outros. Nunca , simples Sempre faça backups simples.

Se não for especificado, o método de backup padrão é o valor da variável de ambiente VERSION_CONTROL ; Se VERSION_CONTROL for indefinido, os padrões do método de backup são existentes .

-C, --directory DIR
Mude para diretório DIR antes de realizar qualquer operação.
--check-device
Verifique os números dos dispositivos ao criar arquivos incrementais. Este é o comportamento padrão.
--no-check-device
Não verifique os números dos dispositivos ao criar arquivos incrementais.
--checkpoint[=NUMBER]
Use “checkpoints”: exiba uma mensagem de progresso todos os NUMBER records (padrão 10 ).
--checkpoint-action=ACTION
Execute AÇÃO em cada ponto de controle. AÇÃO pode ser uma das seguintes:

Sino Reproduza um sino audível no console. dot , . Imprima um único ponto. eco Exibir uma mensagem de texto no console (para erro padrão). Echo = string Exibir string string no erro padrão; Antes da saída, qualquer metacaracteres em seqüência de caracteres são expandidos. Exec = comando Execute o comando fornecido . Dormir = tempo Espere por tempo segundos. Ttyout = string Cadeia de saída na consola atual (‘ / dev / tty ‘).
Várias – opções de ação de ponto de seleção podem ser especificadas. As ações fornecidas serão executadas na ordem de sua aparência na linha de comando.

Usando –checkpoint-action without –checkpoint assumirá o intervalo de ponto de verificação padrão de 10 registros.

--delay-directory-restore
Atrasar os tempos de modificação da configuração e as permissões dos diretórios extraídos até o final da extração.
--no-delay-directory-restore
Os tempos de modificação e as permissões dos diretórios extraídos são definidos quando todos os arquivos deste diretório foram extraídos. Este é o padrão.
--exclude=PATTERN
Evite operar em arquivos cujos nomes coincidem com nome de arquivo padrão PADRÃO .
--exclude-backups
Exclua arquivos de backup e bloqueio de todas as operações.
--exclude-caches
Causa tar para excluir todos os diretórios que contêm uma tag de diretório de cache.

Uma tag de diretório de cache é um arquivo curto com o nome CACHEDIR.TAG e tendo um cabeçalho padrão especificado em http://www.brynosaurus.com/cachedir/spec.html . Esta opção exclui o conteúdo do diretório, mas arquiva o próprio diretório e o arquivo CACHEDIR.TAG .

--exclude-caches-all
Omita diretórios contendo um arquivo CACHEDIR.TAGinteiramente.
--exclude-caches-under
Exclua tudo em diretórios contendo um arquivo CACHEDIR.TAG , incluindo o arquivo CACHEDIR.TAG ; Mas arquive o diretório.
--exclude-tag=FILE
Exclua o conteúdo de qualquer diretório que contenha arquivo FILE , mas arquive o diretório e o arquivo FILE .
--exclude-tag-all=FILE
Omita os diretórios contendo arquivo ARQUIVO inteiramente.
--exclude-tag-under=FILE
Exclua tudo em diretórios contendo arquivo FILE incluindo o arquivo FILE ; Mas arquive o diretório.
--exclude-vcs
Excluir subdiretórios de controle de versão. Esta opção reconhece os arquivos e diretórios utilizados por muitos sistemas VCS amplamente utilizados. Os arquivos excluídos são:

CVS / , e tudo abaixo RCS / , e tudo abaixo SCCS / , e tudo abaixo .git / , e tudo abaixo .gitignore .cvsignore .svn / , e tudo abaixo .arch-ids / , e tudo abaixo {Arco} / , e tudo abaixo = RELEASE-ID = Meta-atualização = Atualização .bzr .bzrignore .bzrtags .hg .hgignore .hgrags _darcs

-f, --file=ARCHIVE
Use o arquivo de arquivo (ou dispositivo) ARQUIVO .
-F, --info-script, --new-volume-script=NAME
Execute o NAME de script no final de cada fita (implica -M ).
--force-local
Force o tar para tratar o arquivo como um arquivo local, mesmo que seu nome contenha dois pontos.
--full-time
Imprima a resolução completa de todos os horários dos arquivos.
-g, --listed-incremental=FILE
Durante uma operação –create , esta opção especifica que o arquivo seja um novo backup incremental do formato GNU, usando o FILE do arquivo instantâneo para determinar quais arquivos devem ser copiados. Com outras operações, esta opção informa tar que o arquivo está no formato incremental.
-G, --incremental
Gerencie backups incrementais do formato GNU antigo.
--group=NAME
Force NAME como grupo para arquivos adicionados.
-h, --dereference
Siga os links simbólicos ; Arquive os arquivos aos quais eles apontam.
-H, --format=FORMAT
Crie o arquivo do formato fornecido, onde FORMAT é um dos seguintes:

gnu Formato GNU tar 1.13.x Oldgnu Formato GNU usado em versões de alcatrão1.12 e inferior Pax Formato POSIX 1003.1-2001 (“pax”) Posix O mesmo que pax Ustar Formato POSIX 1003.1-1988 (“ustar”) V7 Formato antigo do tar de versão Unix versão 7

--hard-dereference
Siga os links rígidos ; Arquive os arquivos aos quais eles se referem.
-i, --ignore-zeros
Ignore os blocos de zero no arquivo. Normalmente, um bloco inteiro de bytes com um valor de zero indica um fim de arquivo; Esta opção ajuda tar a lidar com um arquivo danificado ou qualquer outro arquivo estranhamente formado com blocos de zeros em seus conteúdos.
-I, --use-compress-program=PROG
Use programa de compressão externo PROG . Use esta opção se você não estiver satisfeito com o programa de compressão associado ao sufixo no tempo de compilação, ou se você tiver um programa de compressão que o GNU tar não suporta. O argumento PROG deve ser um comando válido, como você digitaria no prompt da linha de comando , com quaisquer opções adicionais conforme necessário. Coloque-o entre aspas se contiver espaço em branco .

O PROG deve seguir duas convenções: primeiro, quando invocado sem opções adicionais, deve ler dados da entrada padrão , compactá-lo e emiti-lo na saída padrão. Em segundo lugar, se invocado com o adicional ‘ -d’Opção, deve fazer exatamente o oposto: leia os dados compactados da entrada padrão e produza dados não comprimidos na saída padrão.

O último requisito significa que você não deve usar a opção ‘ -d ‘ como parte da própria invocação do comando PROG .

--ignore-case
Ignore o caso de caractere ao combinar padrões ou nomes de arquivos.
--no-ignore-case
Use padrão de maiúsculas e minúsculas e correspondência de nome de arquivo (este é o padrão).
--ignore-command-error
Ignore os códigos de saída dos subprocessos.
--no-ignore-command-error
Trate códigos de saída não-zero de subprocessos como um erro.
--ignore-failed-read
Não saia simplesmente porque um arquivo ilegível foi encontrado.
--index-file=FILE
Envie uma saída detalhada para arquivo FILE para uso posterior.
-j, --bzip2
Esta opção diz ao tar para ler ou escrever arquivos usando o compressor bzip2 .
-J, --xz
Avisa tar para ler ou escrever arquivos usando o compressor xz .
-k, --keep-old-files
Não substitua arquivos existentes ao extrair arquivos de um arquivo e retornar um erro se esses arquivos existirem.
-K, --starting-file=NAME
Esta opção afeta apenas a extração; O tar ignorará a extração de arquivos no arquivo até encontrar um que corresponda ao nome .
--keep-newer-files
Não substitua os arquivos existentes que são mais recentes que suas cópias de arquivo.
-l, --check-links
Verifique o número de links descartados para cada arquivo processado. Se este número não coincide com o número total de links rígidos para o arquivo, imprima uma mensagem de aviso.
-L, --tape-length=size[suf]
Altere a fita depois de escrever um certo número de bytes. Se suf não é especificado, TAMANHO é tratado como um número de kilobytes (1024 bytes), que é equivalente a especificar sufcomo B . Suf pode ser um dos seguintes:

sufixo unidades Equivalente de bytes B Blocos Tamanho x 512 B Kilobytes Tamanho x 1024 C Bytes Tamanho G Gigabytes Tamanho x 1024 ^ 3 K Kilobytes Tamanho x 1024 K Kilobytes Tamanho x 1024 M Megabytes Tamanho x 1024 ^ 2 P Petabytes Tamanho x 1024 ^ 5 T Terabytes Tamanho x 1024 ^ 4 W Palavras Tamanho x 2

--level=n
Ao usar a opção –listed-incremental , force um backup incremental do nível n .
--lzip
Leia ou escreva arquivos através do compressor lzip .
--lzma
Leia ou escreva arquivos através do compressor lzma.
--lzop
Leia ou escreva arquivos através do compressor lzop .
-m, --touch
Define o tempo de modificação de dados dos arquivos extraídos para o tempo de extração, em vez do tempo de modificação de dados armazenado no arquivo. Em outras palavras, toque todos os arquivos extraídos.
-M, --multi-volume
Crie, liste ou extraia um arquivo de vários volumes. Tais arquivos são divididos em partes para que possam se encaixar em mídias muito pequenas para conter o arquivo inteiro.
--mode=permissions
Ao adicionar arquivos a um arquivo, o tar atribuirá permissões aos membros do arquivo, ao invés das permissões dos arquivos. As permissões podem ser especificadas como um número octal ou como permissões simbólicas , como com o chmod .
--mtime=date
Ao adicionar arquivos a um arquivo, o tar usará a data como o tempo de modificação dos membros ao criar arquivos, em vez dos tempos de modificação reais. O valor da data pode ser uma representação de data textual ou um nome do arquivo existente, começando por ” / ” ou ” . “, Caso em que o tempo de modificação desse arquivo é usado.
-n, --seek
Suponha que a mídia de arquivo suporta a busca de locais arbitrários. Normalmente, Tar determina automaticamente se o arquivo pode ser investigado ou não; Esta opção destina-se a ser utilizada nos casos em que esse reconhecimento falha. Só faz efeito se o arquivo estiver aberto para leitura com as opções ” –list ” ou ” –extract “).
-N, --newer, --after-date=date
Somente armazene arquivos cujos dados ou status mudaram na data ou data . Se a data for um nome de arquivo, a data desse arquivo é usada.
--newer-mtime=date
Como – depois da hora , mas apenas olha apenas os tempos de modificação.
--null
Quando o tar está usando a opção ‘ –files-from ‘, esta opção instrui tar para esperar nomes de arquivos terminados com NUL , então tar pode funcionar corretamente com nomes de arquivos que contenham novas linhas .
--no-null
Cancela qualquer opção anterior – nula especificada.
--numeric-owner
Sempre use IDs numéricos, em vez de nomes, para informações de propriedade do usuário / grupo.
-O, --to-stdout
Extraia arquivos para saída padrão.
--occurrence[=number]
Esta opção pode ser usada em conjunto com um dos subcomandos ” –delete “, ” –diff “, ” –extract ” ou ” –list” quando uma lista de arquivos é fornecida na linha de comando ou via ‘ -T ‘opção.

Esta opção instrui tar para processar apenas o número ª ocorrência de cada arquivo nomeado . Número padrão para 1, então

Tar -x -f archive.tar – nome do arquivo da ocorrência
Extrairá a primeira ocorrência do membro ” nome de arquivo ” de ” archive.tar ” e terminará sem escanear até o final do arquivo.

--old-archive, --portability
O mesmo que ” –format = v7 “.
--one-file-system
Evita que o bolo atravesse os limites do sistema de arquivos ao arquivar. Pode ser usado com qualquer operação de gravação.
--overwrite
Substitua arquivos existentes ao extrair.
--overwrite-dir
Substitua metadados de diretórios existentes ao extrair (este é o comportamento padrão).
--no-overwrite-dir
Preserve metadados de diretórios existentes ao extrair.
--owner=user
Especifica que o tar deve usar o usuário como o proprietário dos membros ao criar arquivos, em vez do usuário associado ao arquivo de origem. O usuário pode ser um nome de usuário, ou a identificação numérica do usuário, ou ambos como ” nome : id “.
-p, --preserve-permissions, --same-permissions
Quando o tar é extrair um arquivo, ele normalmente subtrai o umask do usuário das permissões especificadas no arquivo e usa esse número como as permissões para criar o arquivo de destino. Especificar esta opção instrui tar que deve usar as permissões diretamente do arquivo.
-P, --absolute-names
Não retire os ” / ” s principais dos nomes dos arquivos.
--pax-option=keyword-list
Permite a criação do arquivo no formato POSIX.1-2001, onde a lista de palavras-chave é uma lista separada por vírgulas de opções de palavras-chave específicas para esse formato.
--posix
O mesmo que –format = posix .
--preserve
Isto é o mesmo que especificar tanto ” –preserve-permissions ” como ” -same-order “.
--quote-chars=STRING
Ao exibir arquivos e outros membros de um arquivo, o alcatrão trata os nomes dos arquivos de forma especial para evitar ambigüidades causadas por certos caracteres que podem ocorrer no nome do arquivo; Isso é chamado de citação de nome. A opção –quote-chars , além disso, citaráquaisquer caracteres que ocorram em STRING .
--no-quote-chars=STRING
Quando o nome citar, tar nunca citará nenhum dos caracteres em STRING .
--quoting-style=STYLE
Quando citar o nome, use o estilo de citação do nome STYLE . Os valores válidos de STYLE são: literal , shell , shell-always , c , escape , local e clocale . O estilo de citação padrão é escape , a menos que seja substituído durante a configuração do pacote.
-R, --block-number
Com esta opção especificada, o tar imprime mensagens de erro para erros de leitura com o número de bloco no arquivo de arquivo.
--record-size=siz[suf]
Instrui o tar a usar bytes de tamanho por gravação ao acessar o arquivo. O argumento pode ser sufixado com um sufixo de tamanho, por exemplo, ” –record-size = 10K ” para 10 Kilobytes.
--recursion
Recorra os diretórios (este é o padrão).
--no-recursion
Não recorra em subdiretórios ao arquivar.
--recursive-unlink
Remova as hierarquias de diretórios existentes antes de extrair diretórios do mesmo nome do arquivo.
--remove-files
Remova arquivos depois de adicioná-los a um arquivo.
--restrict
Desative o uso de algumas opções de alvos potencialmente nocivas . Atualmente, esta opção desativa a invocação do shell .
--rmt-command=cmd
Nos casos em que tar está usando um servidor remoto fita, esta opção notifica tar que ele deve usar cmd como o programa remoto servidor de fita em vez do padrão ” / usr / libexec / rmt “.
--rsh-command=cmd
Nos casos em que tar está usando um shell remoto para se comunicar com dispositivos não-locais, esta opção notifica tarque ele deve usar cmd em vez do padrão, rsh .
-s, --preserve-order, --same-order
Esta opção ajuda ao processar grandes listas de nomes de arquivos em máquinas com pequenas quantidades de memória. É usado em conjunto com –compare , –list ou –extract .

A opção “mesma ordem” diz que a lista de nomes de arquivos a serem listados ou extraídos é classificada na mesma ordem que os arquivos no arquivo. Isso permite que uma grande lista de nomes seja usada, mesmo em uma pequena máquina que de outra forma não poderia manter todos os nomes na memória ao mesmo tempo. Essa lista ordenada pode ser facilmente criada executando tar -t no arquivo e editando sua saída.

Esta opção provavelmente nunca é necessária em sistemas informáticos modernos.

-S, --sparse
Esta opção instrui tar para testar cada arquivo quanto à dispersão antes de tentar arquivá-lo. Se o arquivo for encontrado esparso, ele é tratado especialmente, permitindo assim diminuir a quantidade de espaço usado por sua imagem no arquivo.

Esta opção só é significativa ao criar ou atualizar arquivos. Não tem efeito sobre a extração.

--same-owner
Tentativa de fornecer arquivos extraídos a mesma propriedade que existe no arquivo (este é o padrão para o superusuário).
--no-same-owner
Não tente restaurar a propriedade ao extrair. Este é o comportamento padrão para usuários comuns, portanto, esta opção tem efeito somente para o superusuário.
--no-same-permissions
Aplique o umask do usuário ao extrair permissões do arquivo. Esse é o comportamento padrão para usuários comuns.
--no-seek
Não tente procurar locais arbitrários dentro de um arquivo.
--show-defaults
Exibe as opções padrão do tar . Isso pode ser útil em certos scripts de shell.
--show-omitted-dirs
Ao listar ou extrair, liste cada diretório que não corresponda aos critérios de pesquisa.
--show-transformed-names, --show-stored-names
Exibir arquivos ou nomes de membros depois de aplicar quaisquer transformações de nome. Em particular, quando usado em conjunto com uma das operações de criação de arquivo, instrui tar para listar os nomes de membros armazenados no arquivo, em oposição aos nomes dos arquivos reais.
--sparse-version=version-number
Especifica a versão de formato a ser usada ao arquivar arquivos esparsos. Implica ‘ –sparse ‘.
--strip-components=number
Tirar o número de componentes principais dos nomes dos arquivos antes da extração. Por exemplo, se o arquivo ” archive.tar ” contiver um membro chamado ” / some / file / name “, em seguida, executando:

Tar –extract – file archive.tar –strip-components = 2
Extrairia este arquivo para o arquivo ” nome “.

--suffix=suffix
Usa o sufixo do sufixo do nome do arquivo ao fazer o backup de arquivos. Se –suffix não for especificado, o sufixo de backup padrão é o valor da variável de ambiente DEFAULT_BACKUP_SUFFIX , ou se essa variável não for definida, ” ~ “.
-T, --files-from=file
O tar usará o conteúdo do arquivo como uma lista de membros ou arquivos de arquivos para operar, além dos especificados na linha de comando.
--to-command=command
Durante a extração, alcatrão vai tubulação arquivos extraídos para a entrada padrão de comando .
--totals[=signum]
Exibir totais totais ao processar um arquivo. Se signum for especificado, esses totais são exibidos quando o tar recebe o número do sinal signum .
--transform, --xform=sed-expr
Substituir nomes de arquivos com sed expressão de substituição do sed-expr . Por exemplo,

Tar cf archive.tar –transform ‘s, ^ \ ./, usr /,’
Irá adicionar aos arquivos archive.tar do diretório de trabalho atual, substituindo o prefixo ” ./ ” inicial por ” usr /”.

-U, --unlink-first
Remova um arquivo correspondente do sistema de arquivos antes de extraí-lo do arquivo, em vez de simplesmente substituí-lo.
--unquote
Unquote nomes de arquivos lidos com -T ; Este é o padrão.
--no-unquote
Não cite os nomes de arquivos lidos com -T .
--utc
Imprima todos os horários dos arquivos em UTC (hora universal).
-v, --verbose
Operar verbalmente .
-V, --label=name
Ao criar um arquivo, escreva o nome como uma gravação de nome no arquivo. Ao extrair ou listar arquivos, o tar só funcionará em arquivos com uma etiqueta correspondente ao padrão especificado no nome .
--volno-file=file
Usado em conjunto com ” –multi-volume “, o tar irá acompanhar o volume de um arquivo de vários volumes no qual está trabalhando no arquivo .
-w, --interactive, --confirmation
Peça confirmação para cada ação.
-W, --verify
Tente verificar o arquivo depois de escrevê-lo.
--warning=keyword
Controle a exibição das mensagens de aviso identificadas por palavra-chave . Se a palavra-chave começar com o prefixo ” não- “, essas mensagens são suprimidas. Caso contrário, eles estão habilitados. Podem ser utilizadas

várias especificações de ” confirmação “.

Existem palavras-chave para várias mensagens de aviso disponíveis em tar . As duas palavras-chave globais são:

todos Ative todas as mensagens de aviso. Este é o padrão. Nenhum Desative todas as mensagens de aviso.

--wildcards
Use curingas .
--wildcards-match-slash
Quando esta opção é especificada, um curinga como ” * ” no padrão pode corresponder a um ” / ” no nome. Caso contrário, ” / ” é igualado apenas por ” / “. Este é o padrão quando o tar é excluindo os arquivos.
--no-wildcards-match-slash
” / ” Não pode ser combinado com um curinga, apenas por ” / “.
--no-wildcards
Os curingas não são permitidos. Os nomes dos arquivos só podem ser correspondidos textualmente.
-X, --exclude-from=file
Como –exclua , mas exclui os arquivos que correspondem aos padrões listados no arquivo .
-z, --gzip, --gunzip
Esta opção diz a tar para ler ou escrever arquivos através do gzip , permitindo que o alcatrão opere diretamente em vários tipos de arquivos compactados de forma transparente. Esta opção deve ser usada, por exemplo, quando estiver operando em arquivos com a extensão .tar.gz .
-Z, --compress, --uncompress
O tar irá usar o programa de compressão quando estiver operando em arquivos.
Advertisements