Entendiendo el Comando Linux – Unix: hexdump

Entendiendo el Comando Linux – Unix: hexdump

Entendiendo el Comando Linux – Unix: hexdump

VALORACIÓN DEL ARTÍCULO:
5/5


hexdump – ascii, decimal, hexadecimal, octal dump

Índice de contenidos

Sinopsis

bcCdovx ] -words[- e format_string ] -words[- f format_file ] – -palabras[- n length ] -words[- s skip ] archivo .

Descripción

La utilidad hexdump es un filtro que muestra los archivos especificados, o la entrada estándar, si no se especifican archivos, en un formato especificado por el usuario.

Las opciones son las siguientes:

-b

Visualización octal de un byte Visualización del offset de entrada en hexadecimal, seguido de dieciséis bytes de datos de entrada separados por espacio, tres columnas, con cero relleno, en octal, por línea.

-c

Visualización de caracteres de un byte Visualización del offset de entrada en hexadecimal, seguido de dieciséis caracteres de datos de entrada por línea separados por espacio, de tres columnas y llenos de espacio.

-C

Canonical hex+ASCII display Muestra el offset de entrada en hexadecimal, seguido de dieciséis bytes hexadecimales separados por espacio, dos columnas, seguidos de los mismos dieciséis bytes en formato %_p encerrados en caracteres «`||».

-d

Visualización decimal de dos bytes Visualización del offset de entrada en hexadecimal, seguido de ocho unidades de datos de entrada de cinco columnas separadas por espacio, llenas de ceros y de dos bytes, en decimales sin signo, por línea.

-e format_string

Especifique una cadena de formato que se utilizará para visualizar los datos.

-f format_file

Especifique un archivo que contenga una o más cadenas de formato separadas por líneas nuevas. Las líneas vacías y las líneas cuyo primer carácter no en blanco es una marca hash ( # son ignoradas.

-n longitud

Interpretan sólo longitud bytes de entrada.

-o

Visualización octal de dos bytes Visualizar el offset de entrada en hexadecimal, seguido de ocho columnas separadas por espacio, seis columnas, llenas de ceros, cantidades de dos bytes de datos de entrada, en octal, por línea.

-s offset

Saltar offset bytes desde el principio de la entrada. Por defecto, offset se interpreta como un número decimal. Con un número líder 0x o 0X offset se interpreta como un número hexadecimal, de lo contrario, con un número líder 0 offset se interpreta como un número octal. La adición del carácter b k o m a offset hace que se interprete como un múltiplo de 512 1024 o 1048576 respectivamente.

-v

La opción – v hace que hexdump muestre todos los datos de entrada. Sin la opción – v , cualquier número de grupos de líneas de salida, que serían idénticos al grupo de líneas de salida inmediatamente anterior (excepto los desplazamientos de entrada), se reemplazan por una línea compuesta por un único asterisco.

-x

Visualización hexadecimal de dos bytes Visualizar el offset de entrada en hexadecimal, seguido de ocho, separados por espacio, cuatro columnas, llenos de ceros, cantidades de dos bytes de datos de entrada, en hexadecimal, por línea.

Para cada archivo de entrada, copia secuencialmente la entrada a la salida estándar, transformando los datos según las cadenas de formato especificadas por las opciones – e y – f , en el orden en que se especificaron.

Formatos

Una cadena de formato contiene cualquier número de unidades de formato, separadas por espacios en blanco. Una unidad de formato contiene hasta tres elementos: un recuento de iteración, un recuento de bytes y un formato.

El conteo de iteración es un número entero positivo opcional, que por defecto es uno. Cada formato se aplica iteración tiempos de conteo.

El número de bytes es un número entero positivo opcional. Si se especifica, define el número de bytes a interpretar por cada iteración del formato.

Si se especifica un recuento de iteración y/o un recuento de bytes, se debe colocar una sola barra después del recuento de iteración y/o antes del recuento de bytes para desambiguarlos. Cualquier espacio en blanco antes o después de la barra es ignorado.

El formato es obligatorio y debe estar rodeado de comillas dobles (» » «). Se interpreta como una cadena de formato de estilo fprint (véase fprintf(3)), con las siguientes excepciones:

  • Un asterisco (*) no puede utilizarse como anchura de campo o precisión.
  • Se requiere un recuento de bytes o precisión de campo para cada carácter de conversión «`s» (a diferencia del valor por defecto fprintf(3) que imprime la cadena completa si la precisión no está especificada).
  • Los caracteres de conversión «h», «l», «n», «p» y «q» no son compatibles.
  • Se soportan las secuencias de escape de un solo carácter descritas en el estándar C:
    • NUL 0
    • a
    • b
    •   f 
    • N
    •  N 
    • N

Hexdump también soporta las siguientes cadenas de conversión adicionales:

_a [ dox ]

Muestra el offset de entrada, acumulativo en todos los archivos de entrada, del siguiente byte que se va a mostrar. Los caracteres añadidos d o y x especifican la base de visualización como decimal, octal o hexadecimal respectivamente.

_A [ dox ]

Idéntica a la cadena de conversión _a excepto que sólo se realiza una vez, cuando se han procesado todos los datos de entrada.

_c

Dar salida a los caracteres en el juego de caracteres por defecto. Los caracteres que no se imprimen se muestran en tres caracteres, octales sin relleno, excepto los representables mediante la notación de escape estándar (véase más arriba), que se muestran como cadenas de dos caracteres.

_p

Dar salida a los caracteres en el juego de caracteres por defecto. Los caracteres que no son de impresión se muestran como una sola « . »

_u

Salida de caracteres US ASCII, con la excepción de que los caracteres de control se muestran utilizando los siguientes nombres en minúsculas. Los caracteres mayores que 0xff, hexadecimales, se muestran como cadenas hexadecimales.

000 nul 001 soh 002 stx 003 etx 004 eot 005 enq

006 ack 007 bel 008 bs 009 ht 00A lf 00B vt

00C ff 00D cr 00E so 00F si 010 dle 011 dc1

012 dc2 013 dc3 014 dc4 015 nak 016 syn 017 etb

018 can 019 em 01A sub 01B esc 01C fs 01D gs

01E rs 01F us 0FF del

Los recuentos de bytes predeterminados y soportados para los caracteres de conversión son los siguientes:

%_c , %_p, %_u, %c

Un byte sólo cuenta.

%d , %i, %o %u, %X, %x

Soporta recuentos de cuatro bytes por defecto, uno, dos y cuatro bytes.

%E , %e, %f, %f %G, %g

Ocho bytes por defecto, cuatro bytes por cuenta.

La cantidad de datos interpretados por cada cadena de formato es la suma de los datos requeridos por cada unidad de formato, que es el conteo de iteración por el conteo de bytes, o el conteo de iteración por el número de bytes requerido por el formato si no se especifica el conteo de bytes.

La entrada se manipula en «`bloques», donde un bloque se define como la mayor cantidad de datos especificados por cualquier cadena de formato. Las cadenas de formato que interpretan menos que el valor de los datos de un bloque de entrada, cuya última unidad de formato interpreta un cierto número de bytes y no tiene un recuento de iteración especificado, tienen el recuento de iteración incrementado hasta que se ha procesado todo el bloque de entrada o no quedan suficientes datos en el bloque para satisfacer la cadena de formato.

Si, ya sea como resultado de una especificación del usuario o de un hexdump que modifica el conteo de iteración como se describió anteriormente, un conteo de iteración es mayor que uno, no se emiten caracteres de espacios en blanco durante la última iteración.

Es un error especificar un recuento de bytes, así como varios caracteres o cadenas de conversión, a menos que todos menos uno de los caracteres o cadenas de conversión sean _a o _A

Si, como resultado de la especificación de la opción – n o fin de archivo que se está alcanzando, los datos de entrada sólo satisfacen parcialmente una cadena de formato, el bloque de entrada se rellena con cero lo suficiente como para mostrar todos los datos disponibles (es decir, cualquier unidad de formato que se superponga al final de los datos mostrará algún número de los bytes cero).

La salida posterior de dichas cadenas de formato se sustituye por un número equivalente de espacios. Un número equivalente de espacios se define como el número de espacios emitidos por un carácter de conversión s con el mismo ancho de campo y la misma precisión que el carácter de conversión original o la cadena de conversión, pero con cualquier « + »’ « « # » caracteres de bandera de conversión eliminados, y con referencia a una cadena NULL.

Si no se especifican cadenas de formato, la visualización por defecto es equivalente a especificar la opción – x .

sale 0 en caso de éxito y>0 si se produce un error.

EJEMPLOS

Mostrar la entrada en formato de lectura:

"%06.6_ao " 12/1 "%3_u "

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>)

"tt" "%_p "

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>»>>>>>>>>>>>i)» (tipo de datospre)»

Implementar la opción -x:

«%07.7_Ax»
«%07.7_ax » 8/2 «%04x » » » » Tipo de datos preestablecidos»

Estándares

Se espera que la utilidad sea compatible con St -p1003.2.

TAMBIÉN TE INTERESA

inteligencia artificial Zoo Aquarium de Madrid

Esta es la forma en la que ha llegado la IA al Zoo Aquarium de Madrid

Hasta en lugares insospechados como el Zoo Aquarium de Madrid está llegando la inteligencia artificial… Pero no, no se trata de animales. Ni tampoco como una forma de gestión administrativa a nivel interno. El proyecto más destacado de este entorno es una cuidadora inteligente de animales presentada como un avatar que es capaz de interactuar

precio galaxy ring

Galaxy Ring: Samsung puja por ser el señor de los añillos (inteligentes)

«Un anillo para gobernarlos a todos», se decía en la famosa trilogía de El Señor de los Anillos. Aplicado al mundo tecnológico, Samsung quiere ser ese rey con su Galaxy Ring, su anillo inteligente que capitanea este joven segmento del que ya hemos hablando en alguna ocasión en Tecnonautas. El Galaxy Ring, lanzado este verano

inteligencia artificial en el sector jurídico

Lefebvre revoluciona el panorama jurídico con su IA: GenIA-L

En un sector tan tradicional como el jurídico, la inteligencia artificial puede tener un gran impacto. Lefebvre, entidad dedicada al software y contenido jurídico, conoce muy bien el camino. Suyos son algunos de los desarrollos que han visto la luz para hacer más eficiente y certera la tarea de los profesionales en los juzgados. El

Xiaomi SU7 Ultra

Xiaomi SU7 Ultra: llega el superdeportivo de la marca tecnológica china

Xiaomi vuelve a sorprender en el mundo del motor con el lanzamiento del Xiaomi SU7 Ultra, un superdeportivo eléctrico que llega para mirar de tú a tú a marcas como Tesla o Porsche. Como base de partida, la firma tecnológica china ya tiene mucho marketing ganado tras el éxito en ventas cosechado por su primer

posicionamiento SEO

Cómo la IA está cambiando el posicionamiento SEO

Nuevamente hablamos de posicionamiento SEO, pero en este caso desde el impacto que supone a esta disciplina la aparición de la Inteligencia Artificial (IA). Como es sabido, estos modelos están suscitando tanto entusiasmo por su potencial como precaución ante sus riesgos. Aunque su representación más común suele estar ligada a robots autónomos, aplicaciones del tipo