Vamos supor que você tenha um tarball chamado lotsofdata.tar.gz
e você apenas saiba que existe um arquivo que deseja, mas tudo que você pode lembrar é que o nome dele contém a palavra contract
. Você tem duas opções:
Use tar
e grep
para listar o conteúdo do seu tarball, para descobrir o caminho completo e o nome de qualquer arquivo que corresponda à parte que você conhece e, em seguida, use tar
para extrair esse arquivo agora que você conhece os detalhes exatos ou use dois As opções pouco conhecidas apenas extraem todos os arquivos que correspondem ao pouco que você sabe sobre o nome do arquivo - você não precisa saber o nome completo ou parte do caminho dessa opção. Os detalhes são:
Opção 1
$ tar -tzf lotsofdata.tar.gz | grep contract
Isso listará os detalhes de todos os arquivos cujos nomes contêm sua parte conhecida. Então você extrai o que deseja usando:
$ tar -xzf lotsofdata.tar.gz <full path and filename from your list above>
Você pode precisar ./
na frente do seu caminho para que ele funcione.
opção 2
$ tar -xzf lotsofdata.tar.gz --wildcards --no-anchored '*contract*'
Depende de você que você achar mais fácil ou mais útil.