grepでバックスラッシュ(\)を検索する機会があったのですが、意外にも「はまった」のでメモとして対応策を残しておきたいと思います。 まず文字列の囲み文字/リテラルとしてダブルクオート(")を利用する場合は\\\\を利用します。わかりにくいですが、バックスラッシュを4つ重ねて初めてバックスラッシュひとつになります。つまり\aという文字を検索したい場合は\\\\aとする必要があります。 cat ${some_file} | grep "\\\\" # バックスラッシュを含む行を抽出する cat ${some_file} | grep "\\\\a" # \aを含む行を抽出する 次にシングルクオート(')を利用する場合は\\が正解です。ダブルクオートによるリテラル文字列とは違い、バックスラッシュはふたつしか重ねる必要がありません。つまり\aであれば\\aと書けばgrepで検索することができます