GNU/Linux >> Tutoriales Linux >  >> Linux

¿Existe una utilidad como hexdump que maneje el endianismo no nativo?

Al menos para palabras de 16 bits, se puede canalizar a través de dd conv=swab como en,

cat file.dat | dd conv=swab | od -t x2

¿Existe una utilidad como hexdump que maneje el endian no nativo?

Sí, la utilidad se llama Perl.

Bueno, en realidad Data::HexDumper, aunque podrías crear el tuyo propio.

number_format
A string specifying how to format the data. It can be any of the following,
which you will notice have the same meanings as they do to perl's pack function:

C        - unsigned char
S        - unsigned 16-bit, native endianness
v or S<  - unsigned 16-bit, little-endian
n or S>  - unsigned 16-bit, big-endian
L        - unsigned 32-bit, native endianness
V or L<  - unsigned 32-bit, little-endian
N or L>  - unsigned 32-bit, big-endian
Q        - unsigned 64-bit, native endianness
Q<       - unsigned 64-bit, little-endian
Q>       - unsigned 64-bit, big-endian

Como sugiere pixelbeat, podrías usar objcopy:

$ objcopy -I binary -O binary --reverse-bytes=num inputfile.bin outputfile.bin

donde num es 2 para palabras de 16 bits, 4 para palabras de 32 bits y 8 para palabras de 64 bits.

Desafortunadamente, objcopy no tiene la opción de aceptar la entrada de stdin o escribe la salida en stdout , por lo que para usarlo como canalización, deberá escribir un script de contenedor que cree archivos temporales.

Esta respuesta se copia de https://stackoverflow.com/a/19288235/1979048 y de https://serverfault.com/a/329207/157443.


Linux
  1. ¿Cómo cambiar el nombre de los archivos específicamente en una lista que utilizará Wget?

  2. Tutorial de Unix Bash Alias:maneje el comando Alias ​​como Jennifer Garner

  3. ¿Dónde puedo configurar las variables de entorno que usará crontab?

  4. ¿Hay alguna forma de convertir de UTF8 a ISO-8859-1?

  5. argumentos ejecutivos auditados que parecen datos codificados

Linux:¿Linux se convertirá en Unix, en lugar de simplemente Unix?

¿Hay algún programa como COM0COM en Linux?

¿Hay un comando de Linux como mv pero con expresiones regulares?

¿Existe un registro que registre los apagados en Linux?

¿Hay alguna utilidad para crear imágenes en blanco?

¿Existe una herramienta linux vfs que permita vincular un directorio en una ubicación diferente (como mount --bind) en el espacio del usuario?