我想做的是在我的服务器上进行搜索,以查找哪些文件包含文件名中带有特定关键字的图像的提及,但我能弄清楚的是如何找到文件名(不是特定于图像的),而不是文件包含对它们的引用。
我尝试过的是:
find -name *nasa*
但这离我想要的还很远,有什么想法吗?
答案1
通过现代实施grep
:
grep -r nasa .
这是一种检查它是否看起来像图像文件名的讨厌方法:
grep -rE 'nasa[[:alnum:] ]*\.(jpe?g|png|gif|tif)' .
有一些明显的警告(最大的警告是它只允许文件名中包含字母数字字符和空格,以避免语法误报)。
尽管如此,如果这是 HTML 或其他内容,您最好使用解析器。
答案2
根据您的要求尝试使用适当的替代品:
find /path/to/ -type f -exec grep -i 'string' {} +