Qualcuno sa di un comando che segnala se un sistema è Big Endian o Little Endian, o è l'opzione migliore una tecnica come questa che utilizza Perl o una stringa di comandi?
Perl
# little
$ perl -MConfig -e 'print "$Config{byteorder}\n";'
12345678
# big
$ perl -MConfig -e 'print "$Config{byteorder}\n";'
87654321
od | awk
# little
$ echo -n I | od -to2 | awk 'FNR==1{ print substr($2,6,1)}'
1
# big
$ echo -n I | od -to2 | awk 'FNR==1{ print substr($2,6,1)}'
0
Riferimenti
lscpu
metodo più recente è più quello che mi sarei aspettato.
od
approccio dovrebbe funzionare sulla maggior parte dei sistemi aperti, non solo su Linux, come nel caso dell'utilizzo lscpu
. Quindi, ciò che è "migliore" dipende dalle circostanze.
od
metodo? È semplice e funziona ovunque. È quello che ho pensato prima di leggere il corpo della tua domanda.