"あ" を E3 81 82 に変換する。
文字コードは全部utf8で。
echo と xxd 使う
xxdじゃなくてhexdump、od -t x1 とかでもいい。
$ echo -n あ | xxd -g1 0000000: e3 81 82 ...
perl の pack 関数使う
$ perl -e 'print unpack "H*", "あ"' e38182
perl の正規表現で1バイトごと取り出してord で1文字ずつ文字コード取り出す
$ perl -e '$text = shift; printf "%x ", ord($_) for $text =~ m/([\x00-\xff])/g ' あ e3 81 82
16進数から文字に戻す
やりかたいっぱいあるけど。
unpack すれば16進数から元の文字に戻せる
packの反対
$ perl -e 'print pack "H*", "e38182"' あ
chr でくっつける
ordの反対
$ perl -le '$char = chr(hex("e3")) . chr(hex("81")) . chr(hex("82")) ; print $char ' あ