UTF8環境でSJISファイルを日本語でgrepをする方法

2011-09-28

UTF8環境でSJISファイルを日本語でgrepをする方法

俺はアホすぎる。 とある理由で、linuxの文字コードはUTF8のまま、SJISファイルを日本語で検索して、UTF8で表示させる必要があり。 得意気に、「こんなのPHPでgrepっぽいの作れば楽勝」とかいって、10分くらいで作ったけど、nkf使えば20秒くらいで作れるじゃん・・・と。しかもシェルスクリプトだから移植性も良い・・・と。 引数のチェックとか面倒なこと考えなければ、下の2行でOK。第一引数は検索文字列。第二引数はファイルかディレクトリ。まあ、こんだけ。そして十分使える。

#!/bin/bash
grep -nr `echo $1 | nkf -s` $2 | nkf -w

と言うわけで、シェルスクリプトを有効活用しましょうねという教訓でした。