• ベストアンサー

grepで半角空白または行末が続く語を探したい

grepもしくはegrepで、半角空白または行末が後ろに続くabcという語を探すにはどう表現すればよいでしょうか? 例えば、 $ echo 'abc' | grep 'abc[ $]' では$が行末ではなく$という文字そのものになります。 2014年8月3日

質問者が選んだベストアンサー

  • ベストアンサー
  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.1

[]の中では、基本的に特殊な文字の意味が無くなり、その文字そのものになります。 AかBのいずれか、という場合は、 | が使えます。 abs |$ だと、 abc空白 または 行末 となるので、 ()を使って、まとめます abc( |$) grepの場合は、グループ化の(),選択の | はそれぞれバックスラッシュを伴った \( \) \I を使います。

RASUM2
質問者

お礼

kmee様、ありがとうございます。 お教え頂いたとおり、 $ echo 'abc' | grep 'abc\( \|$\)' でできました。 2014年8月3日

関連するQ&A