2017年07月 / 06月≪ 12345678910111213141516171819202122232425262728293031≫08月

--.--.-- (--)

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
--:--  |  スポンサー広告  |  EDIT  |  Top↑

2011.05.07 (Sat)

【LINUX】 異なる文字コードのファイルに grep を実行 【grep】

grep コマンドはファイルの中身をチェックし、引数の文字列に該当する部分があるかどうかチェックするコマンド。
通常、

grep ほげ some_file


とすると some_file 内の "ほげ" という文字列がある部分が出力される。

しかし、例えばシステムが UTF-8 の環境なのに、文字列検索対象のファイルが EUC-JP だったりすると、上手く見つけてくれない。
そこで、ググったところ以下の対処法を確認。

grep コマンドには -f という、パターン(上の例でいう "ほげ" )をファイルに指定できるオプションがある。
このファイルを検索対象の文字コードで記述すれば、文字列検索を指定した文字コードで検索することになる。

たとえば、EUC-JP のファイルを対象に検索したい文字列パターンを記述する場合は

echo "ほげ" | nkf -e > pattern.txt
nkf -g pattern.txt
grep -f pattern.txt target_file1 target_file2


といったようにすれば良い。

テーマ : Linux ジャンル : コンピュータ

15:43  |  LINUX  |  TB(0)  |  CM(0)  |  EDIT  |  Top↑

*Comment

コメントを投稿する

URL
COMMENT
PASS  編集・削除するのに必要
SECRET  管理者だけにコメントを表示  (非公開コメント投稿可能)
 

▲PageTop

*Trackback

この記事のトラックバックURL

→http://gasser.blog114.fc2.com/tb.php/488-b2da7ada

この記事にトラックバックする(FC2ブログユーザー)

この記事へのトラックバック

▲PageTop

 | BLOGTOP | 

 
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。