Aqui está uma explicação detalhada sobre como é possível extrair arquivos específicos de um arquivo. Especificamente, o tar GNU pode ser usado para extrair um ou mais arquivos de um tarball. Para extrair membros específicos do archive, forneça seus nomes exatos de membros como argumentos.
Por exemplo:
tar --extract --file={tarball.tar} {file}
Você também pode extrair os arquivos que correspondem a um padrão de globbing específico (curingas). Por exemplo, para extrair do cbz.tar todos os arquivos que começam com pic, independentemente do prefixo do diretório, você pode digitar:
tar -xf cbz.tar --wildcards --no-anchored 'pic*'
Para extrair todos os arquivos php, digite:
tar -xf cbz.tar --wildcards --no-anchored '*.php'
Onde,
-x
: instrui o tar a extrair arquivos.
-f
: especifica o nome do arquivo / tarball.
-v
: Detalhado (mostra o progresso ao extrair arquivos).
-j
: filtre o arquivo morto pelo bzip2, use para descompactar arquivos .bz2.
-z
: filtre o arquivo morto pelo gzip, use para descompactar arquivos .gz.
--wildcards
: instrui o tar a tratar argumentos da linha de comando como padrões de globbing.
--no-anchored
: informa que os padrões se aplicam aos nomes dos membros após qualquer / delimitador.
-t
lista até que o tarball seja totalmente baixado. A qualquer momento, a lista mostra apenas os nomes de arquivos que foram ou estão sendo transferidos, ou seja. não a lista completa ; até que seja totalmente baixado.Não tentei isso sozinho, mas e quanto a isso:
O Tar gera uma linha para STDOUT para cada arquivo extraído, e o
head
comando mata o canal após 50 linhas. Com o cano morrendo, eu esperaria que o alcatrão também morresse.fonte
head
. Deixe-me mudar minha resposta.tar
possa extrair mais de 50 arquivos antes do SIGPIPEd e, em particular, possa extrair o último arquivo incompleto.fornece a lista completa de arquivos
tarfile.tar
Este comando restaura o
fileToRestore
Para desarmar vários arquivos, mas não todos, você pode:
Você coloca toda a lista de arquivos
tarfile.tar
emtar.txt
Agora
tar.txt
tem toda a lista de arquivostarfile.tar
e você pode deixar apenas os arquivos que deseja restaurar ou com a cabeça ...Você pode colocar essas linhas em um arquivo
Ou o arquivo de script completo:
E isso é tudo
fonte