バイナリファイルをcatで見てみようとしたら、文字化けしてしまい冷や汗をかきました。
Webに転がってる情報をまとめた対処法とaliasの設定を書いていきます。
##対処法その1
reset
resetコマンドで端末をリセットします。これで直らない場合もあるみたいです。
その場合はresetコマンドより強力な方法でリセットします。
##対処法その2
echo ^[c
echo「スペース」「Ctrl+v」「Esc」「c」「Enter」と入力する。
##aliasの設定
alias clearbin="echo -e '\ec'"
バイナリになったものをクリアするので、単純にclearbinとしました。
echo -eでエスケープ文字を解釈するようにしています。
eが「Esc」になり、cはそのままですね。
##豆知識(なぜ直るのか)
対処法その2でなぜなおるのか、全然わかんなかったので調べました。
echo
echo「スペース」「Ctrl+v」を押すとこんな感じになりますね。
「Ctrl+v」は「Esc」を入力するための準備的なもので単体だとなにも表示が出ません。
「Esc」をただ押しても入力できないので、この準備がいるみたいです。
echo ^[
続いて「Esc」を押すと、こうなります。
echo ^[c
それに付け加えて「c」を入力
「Esc」と「c」でresetコマンドより強力な端末のリセットが行えるようです。
最後に「Enter」を押して終了ですね。
##「Esc」の表し方
aliasに設定するときに、「Esc」を8進数や16進数で表すことができるようです。
###8進数の場合
alias clearbin="echo -e '\033c'"
###16進数の場合
alias clearbin="echo -e '\0x1bc'"
##参考になった記事
ANSI エスケープシーケンスについて
What does printf(“\033c” ) mean?