所以我有一个 tarball 目录。即/home/用户名/dir_w_tarballs。其中一个 tarball 中有一个许可证 key ,来自曾经在这里工作的工程师。如何在目录中的每个 tarball 中搜索特定文件?类似于 find 的东西。 -name some_file
?我知道我可以使用 tar -jtvf file.tar.bz2
搜索单个 tarball。我希望范围更广一些。
最佳答案
这个怎么样:
find -name '*.tar' -o -name '*.tar.*' | while read f; do
tar -tf "$f" | grep some_file | sed "s|^|$f:|"
done
它将递归查找当前目录下的所有 tarball,列出每个 tarball,使用 grep
搜索特定文件,然后使用 sed
在前面添加 tarball 名称每场比赛,以便您能够知道哪个 tarball 包含每场比赛...
关于linux - 在 tarball 目录中搜索文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11835578/