[英]Unix : find a string with grep -Rn
我想使用grep -Rn
命令在目录中找到字符串$foo['bar']
。 但是,无论我尝试什么,我都无法找到避免正则表达式使用的特征。
user@server$ grep -Rn $foo['bar'] /lib // obviously don't work
user@server$ grep -Rn "$foo['bar']" /lib // don't work
user@server$ grep -Rn `$foo['bar']` /lib // don't work
user@server$ grep -Rn $foo\['bar'\] /lib // don't work
我必须使用grep -Rn
命令,而不要使用另一个命令。 非常感谢 !
您需要转义[]符号,使用此命令:
grep -Rn "\$foo\['bar'\]" /lib
请注意,在这种情况下,不必将初始美元符号转义,但是我发现这种方式更清楚。
试试这个代码:
grep -Rn "$foo\['bar'\]"
为我工作
On sh/bash: grep -Rn "$foo\['bar'\]" /lib
On csh/tcsh: grep -Rn ""\$foo"\['bar'\]" /lib
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.