Tutoriales

grep – un archivo binario

En una distribución de Linux, cualquier documento sin una extensión de texto se denomina archivo binario, que contiene todo, desde comandos y utilidades del sistema hasta documentos de imagen y aplicaciones generadas. Sin embargo, el hecho de que estos documentos sean binarios no significa que no puedan examinarse.

En realidad, puede usar múltiples directivas para obtener información de archivos en formato binario o mostrar su contenido. Observamos la opción «-a» de la declaración grep para Ubuntu 20.04 para procesar o ejecutar datos de archivos binarios como texto.

Comencemos iniciando sesión en el sistema Ubuntu 20.04 Linux. Antes de continuar, actualizaremos nuestro sistema para cumplir con los requisitos y evitar errores.

Asegúrese de tener configurada la última utilidad grep en su sistema Ubuntu 20.04. Esto es necesario porque usaremos la instrucción grep para buscar archivos binarios. Aquí se usó el mismo paquete «apt-get» con la palabra clave «grep» para instalarlo. El procesamiento muestra que ya lo hemos configurado.

ps sudo Instalar apt get grep

Archivo binario versus archivo de texto

En esta figura, echamos un vistazo al archivo binario y al archivo de texto y observamos sus diferencias. Ya hemos dicho que el archivo es binario si no tiene extensión de texto ni formato de texto. Hemos creado 2 archivos de texto en el directorio de inicio con la instrucción «tocar» en nuestro shell, es decir, one.txt y two.txt.

El comando de archivo, que reconoce documentos por formato, es una de las formas más sencillas de extraer información de un formato binario. La directiva de archivo pasa por alto principalmente la extensión de archivo que usamos para calificar un documento. Observe cómo responde a la siguiente declaración aplicada a los archivos de texto, es decir, resultados «vacíos».

ps expediente a.txt

ps expediente dos.txt

Suponga que tiene un archivo de formato JPEG llamado «Baby» en su directorio de inicio, es decir, un archivo de imagen. El uso de la directiva «archivo» mostrará la salida de ese archivo de varias maneras, incluido el análisis del contenido, la búsqueda de un «número mágico» (un indicador de formato de archivo) y el examen de la sintaxis. Debido a que este archivo es una imagen, muestra su formato y varias dimensiones estándar.

Propósito de grep -a

Según nuestra investigación, se utiliza principalmente para procesar cualquier tipo de archivo binario como archivo de texto sin formato. Antes de usar la opción «-a» de la declaración grep para diferentes tipos de archivos, echemos un vistazo a la página del manual «grep», que se escribió especialmente para nuestra ayuda. Para este propósito, se utiliza la instrucción “Manpage” como se muestra a continuación.

Se abre la página de manual de grep. Verá el nombre y la sintaxis para usar en el shell.

Desplácese un poco hacia abajo y en la sección «OPCIONES» encontrará la opción «-a» con su descripción y uso para archivos binarios. Establece que se usa para procesar cualquier documento binario como un documento de texto sin formato, y también podemos usar su alternativa «—binary-files=text» en el shell.

Grep –a en el archivo Bash

Vamos a crear un nuevo archivo bash para agregarle un código bash usando la instrucción «touch» en el shell. El nombre de este archivo se ha asignado como «new.sh» y se ha abierto en el editor «gnu nano» de Ubuntu para una respuesta fácil y rápida.

Dentro de este archivo bash, agregamos soporte para bash, es decir, «#!/bin/bash». Luego, con una sola declaración de «eco», el texto «Hola mundo» se imprimió en el caparazón. Guarde este código por un tiempo.

A medida que ejecutamos este archivo bash en un shell usando la instrucción «bash», aparecerá «Hello World» en la pantalla de nuestro shell de Ubuntu.

Ahora es el momento de usar la instrucción grep «-a» para ejecutar el binario «new.sh». Así que lo usamos con la opción «-a» junto con el patrón y el nombre del archivo, es decir, «nuevo.sh». Debido a que las comillas dobles se dejaron en blanco en la primera ejecución, todo el código del archivo se mostró como texto.

El uso de los patrones «espacio», «/», «#», «eco» y «hola» en otras ejecuciones mostró las líneas respectivas de los patrones y excluyó todas las demás líneas.

ps grep –a «» nuevo.sh

ps grep –a » » nuevo.sh

ps grep -un»/” nuevo.sh

ps grep -un»#“ nuevo.sh

ps grep -un»eco” nuevo.sh

ps grep – un “hola” new.sh

También puede usar el comando grep –a en combinación con el comando cat como se muestra a continuación.

ps Gato nuevo.sh | grep -un saludo»

ps Gato nuevo.sh | grep -un mundo»

Usemos la alternativa —binary-files=text de la opción -a para el comando grep en el binario new.sh. Muestra el mismo resultado que para la opción «-a».

ps grep-binarios=texto «» nuevo.sh

ps grep-binarios= Texto «#“ nuevo.sh

ps grep-binarios= Texto «/” nuevo.sh

ps grep-binarios=Texto «o» nuevo.sh

ps grep-binarios=texto «» nuevo.sh

ps grep-binarios= Texto «eco” nuevo.sh

grep – un archivo en imagen

Usemos la opción grep «-a» en el binario «jpeg». Así que descargamos un archivo de imagen «baby.jpeg» y lo colocamos en la carpeta de inicio.

Contiene la imagen del bebé que se muestra a continuación.

Cuando usamos el comando «grep -a» en «baby.jpeg», obtuvimos un resultado ambiguo que una persona normal no podía entender. Esto se debe a que el archivo binario contiene información de píxeles que no se puede representar con texto sin formato.

ps grep –a «» bebé.jpeg

Conclusión:

Este artículo demuestra el uso del comando grep junto con su opción -a para mostrar los datos binarios en el shell. Discutimos el uso del comando Archivo para mostrar la información del archivo binario en comparación con un archivo de texto sin formato. Por último, usamos el comando grep –a en un archivo bash y un archivo de imagen para mostrar el contenido de esos archivos como salida de texto sin formato. Después de practicar estos ejemplos, serás un experto en grep para Linux.

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

Botón volver arriba