• ベストアンサー

grepでの日本語検索

現在、 grep '2004-10-1' test.log | grep -c '日本語' というように日付と単語の両方がある行数を取り出す処理を行っています。 grepでは日本語は対応していないとありましたが、このように日本語でも行数を取得できるようなコマンドがありましたら、ご教授ください。

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

  • ベストアンサー
  • iichiho
  • ベストアンサー率37% (416/1114)
回答No.2

Linuxのバージョンとgrepのバージョン、シェルの種類が記載されていないので断言出来ませんが、読み込むtest.logの漢字コードがEUCだったら問題なくできると思います。 もし、test.logの感じコードgeucでないのなら、下記のコマンドを利用します。 % nkf -e -Lu test.log | grep '2004-10-1' |grep -c "日本語"

aiurai54
質問者

お礼

ありがとうございます。無事に取得することができました。とってもうれしいです。

その他の回答 (1)

  • interplay
  • ベストアンサー率39% (108/273)
回答No.1

ご質問を見ながらRedHatEnterpriseLinuxAS2.1上で上記コマンドライン試しましたが普通に出来ますよ。。 grepはrpmでgrep-2.4.2-7です。 システムそのものの文字コード設定がUTF-8とかになっていませんか?(FedoraCore3とかはEUCにしないと/UTF-8対応Terminalを使うとか) 見当違いだったら済みません。

aiurai54
質問者

お礼

ありがとうございます。