Que tal apenas:
$ tar tf archive.tar.gz | grep foo
É possível usar o comando find
para que ele procure nos arquivos dentro de um arquivo tar.gz também usando curingas?
como
find archive.tar.gz --name *foo*
Monte o arquivo como um diretório. Você pode fazê-lo com o sistema de arquivos AVFS , que permite acessar qualquer arquivo como um diretório cujo nome tenha um #
.
mountavfs
cd ~/.avfs$PWD
find archive.tar.gz\# -name '*foo*'
Eu acho que funciona sem pipe e grep.
assim:
tar tvf archive.tar.gz "foo"
as this way, globs will also work.
tar tvf archive.tar.gz "*.foo"