La commande standard pour cela est od
, pour un vidage octal (bien qu'avec des options, vous pouvez passer d'octal à décimal ou hexadécimal...) :
$ echo Apple | od -An -vtu1
65 112 112 108 101 10
Notez qu'il affiche la valeur d'octet de chaque octet du fichier. Cela n'a rien à voir avec ASCII ou tout autre jeu de caractères.
Si le fichier contient un A dans un jeu de caractères donné, et que vous aimeriez voir 65, car c'est l'octet utilisé pour A en ASCII, alors vous devrez faire :
< file iconv -f that-charset -t ascii | od -An -vtu1
Pour d'abord convertir ce fichier en ascii, puis vider les valeurs d'octets correspondantes. Par exemple Apple<LF>
en EBCDIC-UK serait 193 151 151 147 133 37
(301 227 227 223 205 045
en octal).
$ 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
, ou $YOUR_FAVORITE_LANGUAGE
peuvent tous faire ça.
% 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)
%