HABLEMOS DE SHELL SCRIPTING. PROGRAMACIÓN EN BASH PARTE 1.





Bienvenidos  mis estimado lectores a mi nuevo post, en esta ocasión les  hablare sobre el manejo  Shell  Scripting o  de Programación en bash como lo conocen la mayoría de ustedes. Estos post los dividire  en partes ya que es un campo es algo extenso y no podre abarcar todo en un solo post.

Introducción

El manejo de script  para los usuarios Linux es algo tan normal y común , ya que la mayoría de nosotros los usamos  para facilitar muchas tareas  o unir aplicaciones o instalar programas en nuestra distribución , en lo personal me gusta construir mis script para   diferentes tareas dentro de mi distribución , por ejemplo  en mis ratos de ocio se medió la tarea de crear un script que limpie mi sistema y que me  instale aplicaciones o un script que maneje todas mis aplicaciones de hacking que uso o  algo más avanzado como un  scanner de red  y de puertos.
Pero no hablemos de lo que he hecho sino de lo que vamos a crear…

CONCEPTOS BÁSICOS:

¿Qué la Shell?


El Shell es un intérprete de comandos. Más que únicamente una capa aislada entre el Kernel del sistema operativo y el usuario, es decir Un shell es un programa a medio camino entre el usuario y el sistema operativo, es también un poderoso lenguaje de programación.


¿Qué es Shell Scripting?




Un Shell Script es un script para la Shell de comandos (terminal).es una herramienta fácil de utilizar para construir aplicaciones “pegando” llamadas al sistema, herramientas, utilidades y archivos binarios.

Bourne Shell y Bourne Again Shell (bash)

En UNIX hay multitud de Shell, pero quizá uno de los más frecuentes es el Bourne Shell y su mejora Bourne Again Shell (bash). Cada uno de los Shells que existen tienen Particularidades que lo hacen único, pero también muchas similitudes que nos permiten, una vez aprendido uno, trabajar con los demás sin demasiados problemas.

En pocas palabras El Shell Bash permite automatizar una acción o realizar tareas repetitivas que consumen una gran cantidad de tiempo.

ALGUNAS CARACTERÍSTICAS DE SHELL SCRIPT

Extensiones .sh

La mayoría de los script para las distribuciones de Linux cuentan con una extensión .sh, sin embargo muchas veces no lo necesita.

Sha Bang (#!)


Se denomina “sha-bang” a la secuencia #! con la que se inician los scripts. Su función es indicarle al sistema que se trata de un conjunto de comandos para que sean Interpretados. En realidad, es un número mágico de dos bytes. El número mágico es un marcador especial para indicar el tipo de archivo, en este caso, indica que se trata de un script de Shell ejecutable.





/bin/bash/ , /usr/bin/perl , etc


En la primera línea del script se debe indicar que shell que vas a usar ( /bin/bash/ , /usr/
bin/perl , etc ) Aunque da igual la que uses lo importante es el contenido:

#! /bin/bash



Comentarios

Para introducir comentarios se debe poner #. Por cada linea que deseéis poner un comentario, lo primero que debe tener es #. Es importante añadir comentarios comentando la utilidad del script o las variables que se crean.

Variables

Al igual que cualquier otro lenguaje de programación, los programas escritos en bash shell o Shell script pueden usar variables para almacenar información de forma temporal. La única diferencia entre estas variables y las de cualquier otro lenguaje de programación de uso habitual es que todas se tratan como si de cadenas de caracteres se tratase y además pueden contener datos de longitud arbitraria. Esto significa que aunque una variable contenga el valor 123, el Shell interpretará ese valor como una cadena de tres caracteres, nunca como un número entero.

Comentarios

Para introducir comentarios se debe poner #. Por cada linea que deseéis poner un comentario, lo primero que debe tener es #. Es importante añadir comentarios comentando la utilidad del script o las variables que se crean.
Ejemplo:

#! /bin/bash#mi  primer script#hola mundo#comentario echo “hola mundo”



Variables

Al igual que cualquier otro lenguaje de programación, los programas escritos en bash shell o Shell script pueden usar variables para almacenar información de forma temporal. La única diferencia entre estas variables y las de cualquier otro lenguaje de programación de uso habitual es que todas se tratan como si de cadenas de caracteres se tratase y además pueden contener datos de longitud arbitraria. Esto significa que aunque una variable contenga el valor 123, el Shell interpretará ese valor como una cadena de tres caracteres, nunca como un número entero.


¿CÓMO EJECUTAR UN SCRIPT?

Antes de poder ejecutarlo, debemos darle permisos de ejecución. (+x) por ello, haremos uso del comando chmod y damos permisos de ejecución, si se desea, se pueden dar a todos los usuarios y grupos.

Para dar permiso de ejecución a un script, puedes ejecutar el siguiente comando desde la terminal:

$ chmod a+x nombre_script.sh

También puede usar:

$chmod 755 /ruta_del_script     Para el usuario propietario

$chmod 777 /ruta_del_script Para cualquier usuario

Una vez hecho todo lo anterior, usaremos:

./nombredelscript.sh

Pero también podemos usar si es un Shell script:

sh nombredelscript.sh

ESCRIBIENDO MI PRIMER SCRIPT BASH. “HOLA MUNDO”

Te acabo de hacer mención de una pisca de la parte básica del manejo y creación de script en un entorno Linux, sin embargo hay cosas más avanzadas que te ire mencionado en los próximos post. A Continuación te describiré  los pasos pares crear un hola mundo:

Paso 1:
Para empezar la creación de script te recomiendo usar un editor como mousepad, nano, geany , etc.., en lo personal me gusta   geany , te lo recomiendo:

Nota:
si usas derivados de Debian puede instalarlo escribiendo en la terminal:

$sudo apt-get install geany

Si usas la familia arch Linux:

$sudo pacman -S  geany geany-plugins xterm

Paso 2:

Todo script bash debe comenzar con esta  primera linea:

#! /bin/bash

Pasó 3

Declaración de variables:
Lo primero es saber cómo dar valor a una variable. Es tan sencillo como poner:
nombre_variable=valor

Si deseas guardar la salida de un programa solo tienes que ponerlo entre tildes
Invertidas:

nombre_variable=`comando`

En nuestro caso solo mandemos un mensaje con “echo”:

echo “hola mundo desde tu terminal”

El código completo seria así:

#! /bin/bash echo “hola mundo”














Paso 4:

 Guardar y ejecutar mi script:
En este paso guardamos el script escrito y le damos permiso de ejecución como mencione al principio del post, en mí caso lo guardare como holamundo.sh:

[exploit@MR-ROBOT Escritorio]$ chmod a+x holamundo.sh

Después de haberle dado permiso de ejecución ejecutamos el script desde la terminal:

[exploit@MR-ROBOT Escritorio]$ ./holamundo.sh



Nota: si usas geany no abra necesidad  ejecutar el script desde la terminal ya que geany puede ejecutarlo desde el mismo, basta con oprimir la tecla f5, para ello tienes que tener instalado xterm en tu  distribución de Linux.


No hay comentarios:

Publicar un comentario