Inicio > Procesamiento y búsqueda de texto > xxd

xxd: Herramienta de volcado hexadecimal y reconversión

El comando xxd es una herramienta para volcar (dump) archivos en formato hexadecimal o, por el contrario, para reconvertir un volcado hexadecimal a su archivo binario original. Es más flexible que `hexdump` y especialmente útil para editar el contenido de un archivo binario y luego revertirlo a su forma original.

Descripción general

xxd, al igual que `hexdump` u `od`, muestra el contenido de archivos binarios en formato hexadecimal y como cadenas ASCII. Sin embargo, su característica más destacada es la **función de reconversión (reverse)**, que permite transformar el contenido volcado de nuevo en el archivo binario original. Gracias a esta función, es posible modificar archivos binarios en formato hexadecimal utilizando un editor de texto y luego guardarlos de nuevo como archivos binarios con `xxd -r`. Esta flexibilidad es muy potente para el análisis y la modificación de archivos binarios, especialmente cuando se usa junto con el editor `vim`.

Características principales

Las características principales del comando xxd son las siguientes:

  • Muestra el contenido de un archivo en formato hexadecimal y ASCII.
  • Puede reconvertir un volcado hexadecimal a su binario original.
  • Se puede utilizar para modificar archivos binarios junto con editores de texto normales.
  • Ofrece diversas opciones para controlar el formato de salida en detalle.

Diferencias entre xxd y hexdump

xxd y hexdump tienen funciones de volcado hexadecimal similares, pero la mayor diferencia radica en la presencia o ausencia de la función de reconversión.

  • xxd: Proporciona la función de `reversión` (`-r`) para convertir un volcado hexadecimal de nuevo en el binario original. Tiene una potente integración con `vim`.
  • hexdump: Es una herramienta centrada únicamente en la función de volcado, no tiene función de reconversión.

Opciones principales

Hemos agrupado las opciones de uso frecuente del comando xxd según su propósito.

1) 덤프 및 역변환 옵션

2) 도움말

Comando generado:

Combina los comandos.

Descripción:

`xxd` Ejecutando el comando.

Combina las opciones anteriores para ejecutar virtualmente los comandos junto con la IA.

Ejemplos de uso

Aprenda las funciones del comando xxd a través de varios ejemplos de uso.

Volcar contenido de archivo en hexadecimal

echo 'Hello World!' > test.txt
xxd test.txt

Muestra el contenido del archivo `test.txt` en caracteres hexadecimales y ASCII.

Guardar volcado hexadecimal en un archivo

xxd /bin/ls > ls_dump.txt

Guarda el contenido del archivo binario `/bin/ls` en el archivo `ls_dump.txt`.

Reconvertir archivo de volcado a original

xxd -r ls_dump.txt ls_copy

Revierte el archivo `ls_dump.txt` previamente guardado a su archivo binario original `ls_copy`. **Esta es la característica más importante de xxd.**

Editar archivos binarios con vim

vim file.bin
(vim에서) :%!xxd
(편집)
(vim에서) :%!xxd -r

En `vim`, use el comando `%!xxd` para cambiar el archivo actual al modo de volcado hexadecimal, edítelo y luego revierta y guarde con `%!xxd -r`.

Instalación

xxd está incluido en el paquete `vim`. Dado que la mayoría de las distribuciones de Linux tienen el paquete `vim-common` o `vim` instalado por defecto, no se requiere una instalación separada.

Debian/Ubuntu

sudo apt update
sudo apt install -y vim-common

RHEL/CentOS/Fedora

sudo dnf install -y vim-common

Consejos y precauciones

Aquí hay algunos puntos a tener en cuenta al usar el comando xxd.

Consejos

  • La opción `-r` de `xxd` solo puede reconvertir correctamente los archivos de volcado generados por `xxd` mismo. Puede que no funcione con archivos de volcado hexadecimal de otros formatos.
  • Debe tener mucho cuidado al modificar archivos binarios. Un solo byte incorrecto puede corromper todo el programa.
  • Al reconvertir, siempre es seguro guardar con un nombre de archivo diferente para evitar sobrescribir el archivo original. (Ej: `xxd -r old.hex > new.bin`)

comandos relacionados

Son comandos que son funcionalmente similares o que se usan juntos con frecuencia.


Comandos de la misma categoría