我想使用grep命令搜索包含字符串“/ usr / vm / data”的文件。为了搜索像“你好吗”这样的普通字符串,我知道我可以这样做:
grep -inr "how are you" *
以递归方式搜索。但是我遇到了需要搜索“/ usr / vm / data”这样的路径的情况。我试过了:
grep -inr "\/usr\/vm\/data" directory1
还有
grep -inr "/usr/vm/data/" directory1
但没有取得任何成功。
答案 0 :(得分:2)
不要折磨自己,这是一个正常的字符串(特别是当你把它放在引号中)。
echo "/usr/vm/data Hello world" | grep -i "/usr/vm/data"
答案 1 :(得分:1)
你的命令运行正常:
$ 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
未遵循的符号链接,或者您可能没有任何匹配的文件?