dポイントプレゼントキャンペーン実施中!

grepの文字列検索で検索文字列が単語として、完全一致した行だけ取り出す方法はないでしょうか?

通常は
grep hoge hoge.txt

と打つと、hogeが含まれる行が出力されますが、今回は含まれる行ではなくて完全に文字列が一致した行だけ取り出したいのです。

例えばhoge.txtの中に
cc ghoge
kkl hogem
jjll hoge
という3行があったとしたら最後の行でhogeという文字が空白で区切られた行だけ取り出したいのです。

何かよい方法があれば教えてください

A 回答 (3件)

-w オプションじゃだめですか?



参考URL:http://www.linux.or.jp/JM/html/GNU_grep/man1/gre …
    • good
    • 1
この回答へのお礼

-wで大丈夫です
ありがとうございます

お礼日時:2007/07/18 23:36

grep -w 'hoge' hoge.txt



Regexp selection and interpretation:
-E, --extended-regexp PATTERN is an extended regular expression
-F, --fixed-strings PATTERN is a set of newline-separated strings
-G, --basic-regexp PATTERN is a basic regular expression
-P, --perl-regexp PATTERN is a Perl regular expression
-e, --regexp=PATTERN use PATTERN as a regular expression
-f, --file=FILE obtain PATTERN from FILE
-i, --ignore-case ignore case distinctions
-w, --word-regexp force PATTERN to match only whole words
-x, --line-regexp force PATTERN to match only whole lines
-z, --null-data a data line ends in 0 byte, not newline

Linuxならまず間違いなくGNU grepを使っているでしょうから、
これらのオプションが使えるはずです。
    • good
    • 1
この回答へのお礼

はい
-wが使えることも確認できました
ありがとうございました

お礼日時:2007/07/18 23:37

grep " hoge " hoge.txt #hogeの前後に空白


ではだめですか?
    • good
    • 2
この回答へのお礼

空白や他の区切り文字でも思うように動きました
ありがとうございました

お礼日時:2007/07/18 23:39

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています