printfでバイナリhello world
文字コードの調査をしたいときや、バイナリファイルの読み書きをしたいときにこれを覚えておくと大変便利です。
$ printf "\x61\n"
a
こんな感じで "\x" の後に続けて16進数を書きます。
$ printf "\x68\x65\x6c\x6c\x6f\n"
hello
ちなみに zshだとechoでもこれができます。(bashのechoではできませんでした。)
$ echo "\x68\x65\x6c\x6c\x6f"
hello
printfで日本語を表示
UTF-8の「あ」を表示$ printf "\xE3\x81\x81\n"
ぁ
EUC_JPの「あ」
$ printf "\xA4\xA1\n"
Shift_JISの「あ」
$ printf "\x82\x9F\n"