How to grep ‘—‘ in Linux? grep: unrecognized option ‘—‘

This happens because grep interprets --- as an option instead of a text to look for. Instead, use --:

grep -- "---" your_file

This way, you tell grep that the rest is not a command line option.

Other options:

  • use grep -e (see Kent’s solution, as I added it when he had already posted it – didn’t notice it until now):

  • use awk (see anubhava’s solution) or sed:

    sed -n '/---/p' file
    

-n prevents sed from printing the lines (its default action). Then /--- matches those lines containing --- and /p makes them be printed.

Leave a Comment

Hata!: SQLSTATE[HY000] [1045] Access denied for user 'divattrend_liink'@'localhost' (using password: YES)