回答:
そのための標準コマンドはod
、8進ダンプの場合です(オプションを使用すると、8進から10進または16進に変更できます...):
$ echo Apple | od -An -vtu1
65 112 112 108 101 10
ファイル内のすべてのバイトのバイト値を出力することに注意してください。ASCIIやその他の文字セットとは関係ありません。
ファイルに特定の文字セットのAが含まれていて、ASCIIでAに使用されているバイトであるため65を見たい場合は、次のようにする必要があります。
< file iconv -f that-charset -t ascii | od -An -vtu1
最初にそのファイルをASCIIに変換してから、対応するバイト値をダンプします。たとえばApple<LF>
、EBCDIC-UKでは193 151 151 147 133 37
(301 227 227 223 205 045
8進数で)になります。
$ printf '\301\227\227\223\205\045' | iconv -f ebcdic-uk -t ascii | od -An -vtu1
65 112 112 108 101 10
hexdump
、od
、xxd
、または$YOUR_FAVORITE_LANGUAGE
すべてのことを行うことができます。
% echo Apple | hexdump -C
00000000 41 70 70 6c 65 0a |Apple.|
00000006
% echo Apple | perl -ne 'printf "%vd\n", $_'
65.112.112.108.101.10
% echo Apple | clisp <( echo '(print (mapcar #'\''char-code (coerce (read-line *standard-input*) '\''list)))' )
(65 112 112 108 101)
%
python -c "print open('file', 'rb').read().encode('hex')"
echo 'Apple' | python -c "import sys;print sys.stdin.read().encode('hex')"
os.linesep
-> '\n'
)を翻訳する可能性があります