Tutoriales

Cómo convertir caracteres hexadecimales a ASCII en Linux

Un sistema de numeración se define como hexadecimal si su representación es en base 16. Los números y caracteres alfabéticos combinados que componen el sistema hexadecimal son:

0 1 2 3 4 5 6 7 8 9 A B C D E F. 

Un sistema de numeración hexadecimal es ideal para grandes sistemas digitales, ya que puede contener/representar valores binarios largos. Este sistema se conoce como base-16 porque se utiliza un total combinado de 16 símbolos (digitales y alfabéticos) del 0 al F para representarlo.

En comparación con otros sistemas de numeración como el decimal, el hexadecimal proporciona un mapeo visual más cercano que facilita la lectura y la interpretación.

ASCII o Código Estándar Americano para Intercambio de Información hace posible la comunicación electrónica a través de su estándar de codificación de caracteres. Por lo tanto, este estándar se atribuye la representación de texto en dispositivos como computadoras y equipos de telecomunicaciones.

Por ejemplo, para convertir algo como un currículum de usuario en ASCII formato, ese documento final estará en texto sin formato sin formato de texto como guiones bajos, negrita o tabulaciones presentes. Este formato sin procesar es fácilmente procesado por computadoras. También facilita que el documento final sea importado y/o utilizado por otras aplicaciones.

Al final de este artículo, deberíamos poder convertir cómodamente Maleficio a ASCII personajes a través de Linux.

Planteamiento del problema

Considere los siguientes caracteres hexadecimales:

54657374696e672031203220330

Teóricamente, la traducción equivalente de lo anterior Maleficio personajes a ASCII personajes es:

Testing 1 2 3 

Vamos a ver varios enfoques basados ​​en Linux para llegar a la solución mencionada anteriormente.

Método 1: usar los comandos echo y xxd

Utilizamos principalmente el xd comando para hacer un volcado hexadecimal de muestreado Maleficio caracteres o invertir la acción indicada. En primer lugar, un comando de eco tomará la muestra Maleficio caracteres como entradas antes de canalizarlos al xd comando para para la conversión a ASCII caracteres.

$ echo 54657374696e672031203220330 | xxd -r -p && echo ''

La opción de mando -r convierte el Maleficio personajes a ASCII y opción de comando -p imprime el resultado en texto sin formato. El final eco El comando produce una nueva línea en la terminal de Linux.

Convertir hexadecimal a ASCII en Linux

Si desea convertir el Maleficio personajes a ASCII caracteres de un archivo, use el comando cat y canalice el archivo a xd dominio.

$ cat sample_file.txt 
$ cat sample_file.txt | xxd -r -p && echo ''
Convertir hexadecimal a ASCII desde archivo
Convertir hexadecimal a ASCII desde archivo

Método 2: usar el comando printf

los imprimir El comando da formato e imprime la entrada de datos con respecto al formato de datos especificado. La opción de mando \x toma Maleficio entradas de caracteres de 1 a 2 dígitos como se muestra a continuación:

$ printf '\x54\x65\x73\x74\x69\x6e\x67\x20\x31\x20\x32\x20\x33\x0' && echo ''

Testing 1 2 3 

Método 3: usar el comando sed

los sed El comando se utiliza para filtrar y transformar el Maleficio entrada de caracteres pasándolos a través de una expresión regular para la conversión a ASCII carácter antes de que se imprima la salida final.

$ echo -n 54657374696e67203120322033 | sed 's/\([0-9A-F]\{2\}\)/\\\\\\x\1/gI' | xargs printf && echo ''

Testing 1 2 3 

Ahora podemos convertir cómodamente simplemente complejos Maleficio a ASCII caracteres del entorno de línea de comandos de Linux.

LEER  Taller de administración de servidores Linux con Manuel Rodríguez

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba