Это происходит потому, что grep
интерпретирует ---
как опцию вместо того, чтобы искать текст. Вместо этого используйте --
:
grep -- "---" your_file
Таким образом вы сообщите grep
, что остальная часть не является параметром командной строки.
Другие параметры:
grep -e
(см. решение Кента , поскольку я добавил его, когда он уже разместил его, до сих пор не заметил его): awk
(см. решение anubhava ) или sed
: sed -n '/---/p' file
-n
предотвращает печать sed
строк (его действие по умолчанию). Затем /---
соответствует тем строкам, которые содержат ---
и /p
, заставляет их печатать.