我想使用 grep 命令搜索包含字符串"/usr/vm/data"的文件。要搜索像"你好吗"这样的普通字符串,我知道我可以做到:
grep -inr "how are you" *
以递归方式搜索。但是我陷入了需要搜索"/usr/vm/data"之类的路径的情况。我试过了: grep -inr "/usr/vm/data" directory1
还有 grep -inr "/usr/vm/data/" directory1
但没有取得任何成功。
不要折磨自己,它是一个普通的字符串(尤其是当你把它放在引号里时)。
echo "/usr/vm/data Hello world" | grep -i "/usr/vm/data"
您的命令工作正常:
$ cat directory1/somefile
foo
bar
this line contains /usr/vm/data/
$ grep -inr "/usr/vm/data/" directory1
directory1/somefile:3:this line contains /usr/vm/data/
$
也许您的文件超出了grep
没有遵循的符号链接,或者您没有任何匹配的文件?