https://github.com/YU81/ShellUtils/blob/master/CHECK_IF_SHIFT_JIS_RANGE.sh
UTF-8の入力を前提としている。
動機
自分の所のシステムから別の会社のシステムにファイルインターフェースする部分があって、
先方がシフトJIS範囲内に無い文字が入っているファイルを受け取ると失敗する、というのがまれに発生し、
当該ファイルマニュアルでインターフェースしてもらう運用になってしまい、
運用カバーでつらい思いをすることがあったので。
実装
引数がただの文字列かファイルパスかはtest文の -s で判定しているだけ。
チェックのロジックに関しては、完全に Network Kanji Filter (nkf) に依存し、
このコマンドで UTF-8->シフトJIS->UTF-8 と1往復の変換を行い、
前後で変化無いと考えられたらOK、程度の簡易なもの。
文字コードガチ勢からのマサカリをお待ちしています。