我遇到过多个 .bz2 文件位于子目录中的情况。我想使用 bzcat 和 grep 命令 linux 命令从所有文件中搜索文本。
我可以使用以下命令搜索一对一文件:
bzcat <filename.bz2> | grep -ia 'text string' | less
但我现在需要对子目录中的所有文件执行上述操作。
最佳答案
您可以使用 bzgrep
而不是 bzcat
和 grep
.这样更快。
要在目录树中递归 grep 使用 find
:
find -type f -name '*.bz2' -execdir bzgrep "pattern" {} \;
find
正在递归搜索带有 *.bz2
的所有文件扩展并应用 -execdir
指定的命令给他们。
关于Linux 在子目录中递归地从 .bz2 文件中搜索文本字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20970579/