使用grep查找包含引号的字符串

时间:2015-06-10 10:00:25

标签: grep pattern-matching quotes

如何找到包含grep引号的字符串?我尝试使用反斜杠来逃避,但这并不起作用。

例如搜索字符串"localStorage['api']"。 我试过了:

grep -r "localStorage['api']" /path
grep -r "localStorage[\'api\']" /path

1 个答案:

答案 0 :(得分:1)

你的逃脱是可以的。问题出在[]grep理解为正则表达式。因此,您需要以某种方式告诉它将字符串视为文字。为此,我们有-F

grep -F "localStorage['api']" file

测试

$ cat a
hello localStorage['api'] and blabla
bye
$ grep -F "localStorage['api']" a
hello localStorage['api'] and blabla

来自man grep

  

-F , - 固定字符串

     

将PATTERN解释为固定字符串列表,以换行符分隔,   其中任何一个都要匹配。