Utilisez -F pour faire correspondre des chaînes fixes :
$ grep -F "\n" file
echo "\nThis line has new line char." >> mno.txt
À partir de man grep :
-F, --fixed-strings
Interpréter PATTERN comme une liste de chaînes fixes, séparées par des retours à la ligne, dont chacune doit être mise en correspondance. (-F est spécifié par POSIX.)
Le moyen le plus simple est d'utiliser REGEX :
grep "$" filename # this will match all lines ending with "\n" (often all lines)
grep "PATTERN$" # this will match all lines ending with "PATTERN\n"
En langage REGEX, $ signifie EOL (fin de ligne), il correspondra donc souvent à "\n" (la cause est très courante comme fin de ligne).
ATTENTION :attention à utiliser les versions de grep qui prennent en charge REGEX !.
Échappez simplement à la barre oblique inverse avec une autre barre oblique inverse et placez l'expression régulière entre guillemets simples afin que le shell la transmette à grep sans gérer les barres obliques inverses lui-même :
grep '\\n' abc.ksh