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
と言うわけで、シェルスクリプトを有効活用しましょうねという教訓でした。