Я пытаюсь выполнить эту команду.
grep -rin "wp_get_attachment_url" *
Но подчеркивание (_) в строковом значении, похоже, портит команду grep. Как мне найти строковые значения с подчеркиванием?
Если wp_get_attachment_url
на самом деле является URL-адресом, который должен интерпретироваться буквально, используйте одинарные кавычки, чтобы предотвратить интерпретацию символов оболочкой. Кроме того, используйте опцию -F
в grep
, чтобы избежать интерпретации шаблона как регулярного выражения.
http://example.com/?id=1
, интерпретируемое как регулярное выражение, будет соответствовать http://example.comid=1
или http://example.com/id=1
, но не http://example.com/?id=1
.
Команда становится:
grep -rinF 'http://example.com/?id=1' *
Если шаблон содержит '
, используйте '\''
для его выхода:
grep -rinF 'mornin'\'' all' *
Подсказка: *
соответствует всем не скрытые файлы в текущем каталоге. Если вы также хотите сопоставить точечные файлы, просто рекурсивно выполните grep текущего каталога (-r
):
grep -rinF 'search term' .