Cómo crear un archivo binario desde el script de shell

Cómo crear un archivo binario desde el script de shell

Mientras trabajamos con los sistemas Linux, utilizamos muchos de los comandos diariamente. La mayoría de los comandos están disponibles en formato binario en /bin, /sbin, /usr /bin, /usr /sbin, etc. directorios. Como administrador del sistema o estudiante, escribimos muchos de los script de shell para hacer pocas tareas o automatizarlos. Este artículo lo ayudará a crear un archivo binario de su script de shell, para que nadie pueda ver el código fuente de su script y podamos usarlos como comando. Para crear un archivo binario a partir de un script, utilizamos el compilador SHC escrito por Francisco Javier Rosales García.

Siga los pasos a continuación para hacer esto.

Paso 1 - Prerequusidades

En primer lugar, debe instalar los paquetes requeridos para el compilador SHC.

Para Ubuntu, Debian y LinuxMint

sudo apt-get install libc6-dev 

Para CentOS, Rhel y Fedora

sudo yum instalar glibc-devel 

Paso 2 - Descargar e instalar SHC

Descargue el último código fuente del compilador SHC desde su página web oficial o use los comandos a continuación y extraiga en su sistema.

CD/USR/SRC WGet http: // www.datsi.FI.upm.es/~ fraloso/fuentes/shc-3.8.9.TGZ SUDO TAR XZF SHC-3.8.9.tgz 

Ahora compile el código fuente de SHC en su sistema e instálelo con el siguiente comando.

CD SHC-3.8.9 Make Make Instalar 

Paso 3 - Crear script de shell

Creemos un script de shell según su requisito o omita este paso si ya creó. Para este artículo, hemos creado a continuación un script de muestra que agrega los valores enteros dados en el parámetro de línea de comandos y muestran la suma de ellos.

guión vim.mierda
#!/bin/bash total = 0 para i en [correo electrónico protegido]; Hacer si [ ! -z "$ i ## [0-9]*"]; luego echo "Ingrese solo numérico" Salida 1 fi total = $ (($ total + $ i)) hecho si [$ total -eq 0]; Entonces echo "Por favor, ejecute script como: $ 0 10 20 30" Salida 0 fi echo $ total 

Paso 4 - Crear binario de script

En esta etapa hemos instalado el compilador SHC y tenemos un script de shell llamado script.mierda. Use el siguiente comando para crear un archivo binario de su script.

shc -t -f script.mierda 

El comando anterior creará dos archivos en el directorio actual. Uno será el guión.mierda.X.C que está en formato de lenguaje C de su script. El segundo será el guión.mierda.x que estará en formato binario.

Paso 5 - Prueba de script binario:

Si intenta abrir el formato binario de script, verá que no está en formato legible humano.

Ahora mueva este script en el directorio /usr /bin para usar desde cualquier lugar del sistema. También eliminar .mierda.x desde el nombre del archivo. Entonces estará disponible con un nombre simple. También establezca los permisos de ejecución a todos

guión de MV.mierda.x/usr/bin/script chmod +x/usr/bin/script 

Ahora escriba 'script' de comando desde cualquier lugar del sistema. Verá los mismos resultados que su script de shell.

Script 10 20 30  60