1
所以我有一個tarball的目錄。即/ home/username/dir_w_tarballs。其中一個tarball是一位曾經在這裏工作的工程師的許可證密鑰。如何在目錄中的每個tarball中搜索特定文件?類似於find . -name some_file
?我知道我可以用tar -jtvf file.tar.bz2
搜索一個tarball。我希望有更廣泛的範圍。搜索文件的tarball目錄?
所以我有一個tarball的目錄。即/ home/username/dir_w_tarballs。其中一個tarball是一位曾經在這裏工作的工程師的許可證密鑰。如何在目錄中的每個tarball中搜索特定文件?類似於find . -name some_file
?我知道我可以用tar -jtvf file.tar.bz2
搜索一個tarball。我希望有更廣泛的範圍。搜索文件的tarball目錄?
如何:
find -name '*.tar' -o -name '*.tar.*' | while read f; do
tar -tf "$f" | grep some_file | sed "s|^|$f:|"
done
它會遞歸查找當前目錄下的所有壓縮包,列出他們中的每一個,使用grep
來搜索特定的文件,然後sed
預先設置壓縮包的名稱以每比賽,這樣你就能夠知道哪些壓縮包裏面包含每場比賽...
感謝您的快速反應!似乎沒有爲我工作。我進入這一切作爲一個行命令,這樣 – Houdini 2012-08-06 21:01:02
@Houdini:如果你進入它作爲一個內膽,你需要一個額外的',''之前... done' – thkala 2012-08-06 21:03:28
@Houdini:這也假設一個比較新的如果沒有明確的'-z' /'-j'選項可以解壓縮包'tar'版本... – thkala 2012-08-06 21:04:29