Odpowiedzi:
A może po prostu:
$ tar tf archive.tar.gz | grep foo
tar tf graphics.tar.gz | find . --name *space*
ale mówiunkown predicate --name
find
Argumenty @clamp wymagają tylko jednego myślnika, ale ponieważ jest to lista plików na stdin, grep
zamiast tego chcesz użyć , podobnie jak przykładowy kod hesse. Spróbujtar tf graphics.tar.gz | grep 'space'
grep *foo*
nie jest prawidłowym wyrażeniem regularnym. greg
nie rozumie globów, rozumie wyrażenia regularne. Spróbuj grep foo
zamiast tego.
Zamontuj archiwum jako katalog. Możesz to zrobić za pomocą systemu plików AVFS , który umożliwia dostęp do dowolnego archiwum jako katalogu, którego nazwa ma końcowy ciąg #
.
mountavfs
cd ~/.avfs$PWD
find archive.tar.gz\# -name '*foo*'
Myślę, że to działa bez fajki i grep.
lubię to:
tar tvf archive.tar.gz "foo"
w ten sposób globusy również będą działać.
tar tvf archive.tar.gz "*.foo"