如何搜索特定目录下包含特定字符串序列(如“superuser”)的所有文件
即搜索当前目录和子目录中的所有文件(递归),如果它们包含“超级用户”
答案1
grep 的-R
选项执行以下操作:
grep -R "superuser" .
编辑:仅搜索 .mp3 文件并返回其名称(而不是匹配的内容,因为它们无论如何都不是文本文件),使用 find 获取 .mp3 列表,然后使用 xargs 将它们传递给grep -l
:
find . -name "*.mp3" -print0 | xargs -0 grep -l "superuser"
如果你的 find 版本支持-exec ... +
(至少最近的 OS X 支持),你可以让 find 直接运行 grep:
find . -name "*.mp3" -exec grep -l "superuser" {} +