Qué es un shell script y cuál es su estructura básica

Un shell script es un programa cuyo lenguaje de programación es el conjunto de instrucciones de la línea de comandos. Esto hace que sea muy fácil de programar, ya que sus instrucciones son los comandos que usamos todos los días: cd, pwd, ls, echo… pero como cualquier lenguaje de programación, permite añadir funcionalidades a estos comandos, como el uso de variables, agrupar instrucciones en funciones o usar fichero externos con más variables o funciones.

Para indicar que el script es de Bash, usaremos la siguiente línea al comienzo del script:

#!/bin/bash

Y, a partir de ahí, escribir los comandos que queramos ejecutar. Veamos el clásico Hola, mundo escrito en shell script:

 

#!/bin/bash

echo "Hola, mundo."

El uso de las variables difiere un poco de otros lenguajes ya que las variables se definen con un nombre de variable pero para usarlas, se coloca delante el símbolo $:

#!/bin/bash

string="Hola, mundo."
echo $string

Los scripts en Bash se escriben en ficheros de texto plano. Muchas veces se guardan con extensión .sh, pero no es necesario, ya que para que sea un ejecutable, lo importante no es la extensión, sino tener permisos de ejecución.

Para dar permisos de ejecución a un script, usaremos el comando chmod. Bien añadiéndole permisos de ejecución:

chmod +x script.sh

O bien modificando los permisos del fichero, otorgándole permisos de lectura (w), escritura (r) y ejecución (x) al usuario:

 

chmod u=rwx script.sh

Para ejecutar este script, escribiremos la ruta (./ si está en el directorio actual) y el nombre del script:

./script.sh

O lo guardaremos en un directorio de las rutas de los ficheros ejecutables. Podemos saber cuáles son estas rutas con la variable de entorno $PATH:

echo $PATH

 

Deja una respuesta

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