Fecha de última modificación:

12 Abril, 2015 - 01:03

xxd

Crea un volcado hexadecimal de un archivo. También puede convertir un volcado hexadecimal de nuevo a su forma binaria inicial. Además, puede ser utilizado para realizar parches archivo binario.

Su sintaxis es de la forma:
xxd [opciones] [archivo]

Sus opciones son:

-p muestra el archivo en hexadecimal plano o plain hexdump.

-r transforma de hexadecimal a binario.

-h muestra la ayuda del comando.


xxd ejemplo.dcm muestra el archivo ejemplo.dcm en hexadecimal y en ASCII

# xxd ejemplo.dcm
0000000: 0000 0000 0000 0000 0000 0000 0000 0000  ................
0000010: 0000 0000 0000 0000 0000 0000 0000 0000  ................
0000020: 0000 0000 0000 0000 0000 0000 0000 0000  ................
0000030: 0000 0000 0000 0000 0000 0000 0000 0000  ................
0000040: 0000 0000 0000 0000 0000 0000 0000 0000  ................
0000050: 0000 0000 0000 0000 0000 0000 0000 0000  ................
0000060: 0000 0000 0000 0000 0000 0000 0000 0000  ................
0000070: 0000 0000 0000 0000 0000 0000 0000 0000  ................
0000080: 4449 434d 0200 0000 554c 0400 b800 0000  DICM....UL......
0000090: 0200 0100 4f42 0000 0200 0000 0001 0200  ....OB..........
00000a0: 0200 5549 1e00 312e 322e 3834 302e 3130  ..UI..1.2.840.10
00000b0: 3030 382e 352e 312e 342e 312e 312e 312e  008.5.1.4.1.1.1.
00000c0: 332e 3100 0200 0300 5549 2800 312e 322e  3.1.....UI(.1.2.
00000d0: 3235 302e 312e 3930 2e33 2e36 3039 3333  250.1.90.3.60933
00000e0: 3139 3933 2e31 3431 3338 3332 3232 362e  1993.1413832226.
00000f0: 3339 3100 0200 1000 5549 1600 312e 322e  391.....UI..1.2.
0000100: 3834 302e 3130 3030 382e 312e 322e 342e  840.10008.1.2.4.
0000110: 3730 0200 1200 5549 1a00 312e 322e 3235  70....UI..1.2.25
0000120: 302e 312e 3930 2e35 302e 362e 3133 2e30  0.1.90.50.6.13.0
0000130: 2e32 3400 0200 1300 5348 0c00 5457 5f36  .24.....SH..TW_6
0000140: 5f31 335f 305f 3234 0800 0500 4353 0a00  _13_0_24....CS..
0000150: 4953 4f5f 4952 2031 3030 0800 0800 4353  ISO_IR 100....CS
0000160: 1200 4f52 4947 494e 414c 5c50 5249 4d41  ..ORIGINAL\PRIMA
0000170: 5259 5c20 0800 1600 5549 1e00 312e 322e  RY\ ....UI..1.2.
0000180: 3834 302e 3130 3030 382e 352e 312e 342e  840.10008.5.1.4.
0000190: 312e 312e 312e 332e 3100 0800 1800 5549  1.1.1.3.1.....UI
00001a0: 2800 312e 322e 3235 302e 312e 3930 2e33  (.1.2.250.1.90.3
00001b0: 2e36 3039 3333 3139 3933 2e31 3431 3338  .609331993.14138
00001c0: 3332 3232 362e 3339 3100 0800 2000 4441  32226.391... .DA

xxd -p ejemplo.dcm muestra el archivo ejemplo.dcm en hexadecimal plano, también conocido como plain hexdump

xxd -p ejemplo.dcm
000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000
00000000000000004449434d02000000554c0400b8000000020001004f42
00000200000000010200020055491e00312e322e3834302e31303030382e
352e312e342e312e312e312e332e31000200030055492800312e322e3235
302e312e39302e332e3630393333313939332e313431333833323232362e
333931000200100055491600312e322e3834302e31303030382e312e322e
342e37300200120055491a00312e322e3235302e312e39302e35302e362e
31332e302e3234000200130053480c0054575f365f31335f305f32340800
050043530a0049534f5f49522031303008000800435312004f524947494e
414c5c5052494d4152595c200800160055491e00312e322e3834302e3130
3030382e352e312e342e312e312e312e332e31000800180055492800312e
322e3235302e312e39302e332e3630393333313939332e31343133383332
3232362e3339310008002000444108003230313431303230080021004441
080032303134313032300800220044410800323031343130323008002300
44410800323031343130323008003000544d060031363039323508003100

xxd -p ejemplo.dcm | tr -d '\n' | grep -i "FEFFDDE000000000" busca la cadena FEFFDDE000000000 hexadecimal en el archivo ejemplo.dcm, para lo cual eliminamos los satos con el comando tr -d '\n'

xxd -p ejemplo.dcm | tr -d '\n' | grep -oE '.*feffdde000000000' | fold -w60 | xxd -p -r > cortado.dcm Lo que realiza toda la secuencia anterior es cortar el archivo ejemplo.dcm luego de que aparezca la secuencia feffdde000000000 y guardar el archivo recortado como cortado.dcm, si se quiere recortar el archivo entre dos patrones solo se debe modificar el comando grep

A continuación se muestra un ejemplo de transformación de hexadecimal a binario, usando el comando xxd con al opción -r

# cat pp.txt
Hola esto es un ejemplo
# xxd pp.txt
0000000: 486f 6c61 2065 7374 6f20 6573 2075 6e20  Hola esto es un 
0000010: 656a 656d 706c 6f0a                      ejemplo.
# xxd pp.txt > pp.hex 
# cat pp.hex 
0000000: 486f 6c61 2065 7374 6f20 6573 2075 6e20  Hola esto es un 
0000010: 656a 656d 706c 6f0a                      ejemplo.
# xxd -r pp.hex > pp.dat
# cat pp.dat 
Hola esto es un ejemplo

Si se realizo con un volcado simple, por ejemplo: xxd -p pp.txt para transformarlo será xxd -p -r pp.hex > pp.dat


Otros comando similar son: hexdump y hexedit

Leer más sobre: 

¿Te resulto útil?: 

5

Envíanos tús preguntas, comentarios o sugerencias

 

Solicita Asistencia

Llámenos al:+549 11 (15)32788353

Envíenos un e-mail: consultas@ ---Para enviar el SPAM--- francisconi.org

Skype Status for francisconi.hugo.adrian
 

Suscríbete

Suscríbete y recibe las últimas actualizaciones, noticias y más ...