如何grep当前目录和所有子目录中的文件


-1

我知道之前已经提出过这个问题,但建议的解决方案对我不起作用。

我正在尝试在当前目录和所有子目录中的任何文件中找到字符串“modelInstance.addObservers”(理想情况下,任何带有.js结尾的文件,但没有这个过滤器也没问题)。这是我试过的:

grep -rl "modelInstance.addObserver" .

它表现得好像语句不完整,因为它在我点击时会保持打印空白行enter。问题是什么?

我在Mac上。

这是它的样子: 在此输入图像描述


虽然没有经过测试但是很快:find . -name * | grep "modelInstance.addObserver" .如果不是,那么一些变化就像这样的管道递归findgrep命令。也许至少对你来说是一个潜在的起点。
Pimp Juice IT

请提供代码和/或说明错误。图片上的文字太小,无法让某些人阅读。此外,搜索引擎无法为将来的访问者索引图像上的文本。
jww

Answers:


0

没有错:当没有程序提示输入时,终端会回显键入的字符; 同时grep正在运行,但没有找到任何匹配字符串的文件。

如果.js使用find以下方法将搜索限制为文件,则速度会快得多:

find . -name "*.js" -exec grep -l 'modelInstance\.addObservers' {} \;

请注意,我已经.在搜索字符串中进行了转义,以便仅匹配.该位置的文字而非任意字符。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.