Macのコマンドラインからこれを行うと(ターミナルのUTF-8とファイルもそうです):
tr -cd '[:print:]\n' < infile > outfile
Linux システムで同じコマンドを実行している場合とは異なる出力ファイルの結果が得られます (ターミナルでは UTF-8 で、ファイルもそうです)。
この理由は何ですか?
これは、Mac でコマンドを実行するときにまだ存在するサンプル文字です: š (文字はキャロン付きの拡張 ASCII 文字 0x9A/s です)。Linux でコマンドを実行すると、同じ文字が削除されます。