2013-04-01 4 views
0

Я хотел найти эту строку $string['site:config'] в моей папке. Но когда я использую нормальную функцию grep grep -r "$string['site:config']", это дает мне случайные результаты.Использование grep для поиска строки

+0

@ylabidi: Итак, в этом случае я не могу найти эту строку? – xan

+0

использовать -F, чтобы заставить grep интерпретировать данный шаблон как обычную строку, а не как регулярное выражение. – ylabidi

+0

Проблема с вашим шаблоном заключается в том, что символы, такие как $ [], являются символами, используемыми для определения регулярных выражений, и вам нужно либо сбежать от них, либо поручить команде grep искать данную строку как есть, не пытаясь интерпретировать ее как регулярное выражение. – ylabidi

ответ

1

Проблема с рисунком в том, что символы, такие как $ [ ] являются символы, используемые для определения регулярных выражений, и вы должны либо избежать их:

grep "\$string\['site:config'\]" 

или поручить Grep искать заданную строку как:

grep -F "$string['site:config']" 

, не пытаясь интерпретировать его как регулярное выражение.

Смежные вопросы