Cómo escribir un pequeño script bash
- Laure
- 27 feb 2020
- 5 Min. de lectura
Actualizado: 1 sept 2020

Por poco que hayas trabajado con la terminal, seguro que en más de una ocasión te has sorprendido a ti mismo repitiendo instrucciones. Realizar tareas repetitivas es algo realmente tedioso. Si, es cierto, que cuanto más veces repites una tarea menos te equivocarás, porque habrás adquirido más destreza. Lo que es seguro, es que si automatizas una tarea repetitiva, no te volverás a equivocar nunca.
Aunque puedas pensar que los scripts en Bash son algo más para sistemas, lo cierto es que lo puedes emplear para cualquier cosa que te puedas imaginar. Una copia de seguridad es la tarea repetitiva por excelencia, y por tanto es carne de cañón para realizar scripts en Bash. Y por supuesto, no puedes dejar de lado a tu pequeña Raspberry Pi, donde puedes automatizar tareas que ella se encargue de llevar adelante.
Estas son algunas razones para ponerte manos a la obra y aprender a crear tus propios scripts en Bash. Eso si, antes que te lances a aprender a crear tus propios scripts en Bash, te recomiendo que si no te desenvuelves con soltura en la terminal, le des un repaso algún tutorial.
¿Qué es Bash?
Bash es un intérprete de comandos (lo que normalmente puedes encontrar como shell). Se trata de una interfaz de usuario con la que relacionarte con el sistema operativo con el que estás trabajando. Así, esta aplicación es capaz de leer y ejecutar instrucciones. Básicamente es el encargado de decirle al sistema operativo lo que tú quieres hacer. Posteriormente, se encargará de devolverte la respuesta del sistema operativo, en el caso de que la haya.
Un poquito de historia sobre Bash
Por ponerte en contexto, indicarte que Bash es un acrónimo de Bourne-again shell. Un juego de palabras que viene a significar algo así como nacido de nuevo. Bourne fue el intérprete de la versión 7 de Unix, desarrollado inicialmente por el investigador Stephen Bourne. Mientras que Bash, es el equivalente implementado por Brian Fox, para el proyecto GNU, cuya versión beta fué liberada en 1989.
Desde ese momento, Bash se ha convertido en el intérprete de comandos más popular de los utilizados en Linux. Todo esto te puede hacer una idea del alcance de este intérprete de comandos.
¿Por qué necesitas scripts en Bash?
Uno de las principales razones para iniciarte en el mundo del scripting es sin lugar a dudas la automatización. Pero, ¿para que automatizar? Simplemente para reducir el número de errores. Un proceso que hayas automatizado, es un proceso que tiene menos probabilidades de que falle.
Por ejemplo, un trabajo que deberías de hacer, es una copia de seguridad de tus documentos más importantes. O de tus archivos de configuración o de lo que tú consideres. Este trabajo, es un trabajo realmente tedioso, y que normalmente pospones en favor de otros. Es una procrastinación en toda regla. O simplemente olvidas que lo tienes que hacer, o piensas que ya lo has hecho.
Y llegó la Raspberry
Por último, no quiero dejar de lado a la pequeña Raspberry Pi. Si te gusta el cacharreo, si quieres sacarle el máximo partido a este pequeño, gran ordenador, no puedes dejar de aprender a hacer tus propios scripts en Bash.
¿Qué necesitas para aprender a realizar scripts en Bash?
Un editor de texto
A parte de un sistema operativo que tenga Bash, también necesitarás un editor de texto. Aquí, puedes utilizar cualquier editor de texto que venga con tu sistema operativo. Así, por ejemplo, puedes utilizar gedit en Ubuntu. Sin embargo, mi recomendación, es que te decantes por uno que esté en la propia terminal. De esta forma, lo tendrás todo de la mano.
Si no conoces que editores puedes utilizar en la terminal, mi recomendación es nano. Este editor, es al que me referiré durante este tutorial para hacer los scripts, de forma que te resulte más sencillo e intuitivo.
Acabas de llegar a Linux
Si acabas de llegar a Linux o todavía no has empezado a utilizar la terminal, ha llegado el momento. Este tutorial trata de ver las características más interesantes de la terminal. El objetivo, no solo es que aprendas a utilizar la terminal, sino que llegues a sacarle el máximo partido posible.
No tienes ni idea de programación
Otra excusa que puedes ponerte a ti mismo, para no querer hacer scripts en Bash es que no tienes ni idea de programación. Pero, precisamente, esto no debería ser un escollo, más bien todo lo contrario, debería ser un acicate.
Gracias a este tutorial, empezarás a realizar tus primeros programas. Porque si, en Bash, también puedes hacer programas tan complicados como tu quieras. Al final, un script no es más que un programa. Ahí es tu imaginación la que pone los límites al programa o script que quieras hacer.
Mi primer script
Aunque este sea un capítulo de introducción, no puedes irte sin crear y ejecutar tu primer script. Será un Hola mundo.
Instalando el editor
El primer paso es instalar el editor que utilizarás durante todo el tutorial, que como te he comentado será nano. Para hacer esto, tan solo tienes que ejecutar la siguiente instrucción en el terminal:
sudo apt update
sudo apt install nano
Primeros pasos con nano
Una vez has instalado nano, una instalación que dura apenas unos segundos, lo tienes que iniciar. Para iniciarlo, tan solo tendrás que ejecutar nano. Directamente ya puedes escribir lo que quieras. Para trabajar con nano necesitas conocer algunos atajos de teclado imprescindibles que podrás encontrar en este artículo sobre nano. Sin embargo, te digo aquí lo más básico, para que puedas empezar con tu primer script:
Ctrl+R para abrir un archivo
Ctrl+O para guardar el archivo
Ctrl+X para salir
Vamos allá, crea tu primer script. Ejecuta nano primero.sh. Pega el siguiente contenido, y guarda utilizando Ctrl+O. Una vez terminado, utiliza Ctrl+X para salir del editor.
Si te das cuenta, en la parte inferior del editor están las principales operaciones que puedes realizar con nano.
#!/bin/bash
echo Hola mundo

Si ahora, ejecutas bash primero.sh te mostrará el esperado Hola mundo. Pero podemos hacerlo todavía más cómodo, podemos darle permisos de ejecución. Para ello, simplemente ejecuta:
sudo chmod +x primero.sh
Ahora ya puedes ejecutar tu script directamente con ./primero.sh. Si te preguntas la razón para poner ./ antes del nombre de tu script, es que Bash interpreta, únicamente los comandos que se encuentran en $PATH, y el directorio en el que te encuentras no se encuentra por razones de seguridad.

Anatomía de un script
En este primer script has introducido dos líneas. La primera línea es la que indica el intérprete que se debe utilizar. Se conoce como shebang. Es importante que recuerdes que tienes que indicar la ruta completa.
En el caso de tu primer script, en la primera línea indicas, que el intérprete será bash, indicando la ruta completa, /bin/bash. Igualmente que indicas que es bash, podría ser cualquier otro, como sh o incluso python o nodejs en el caso que quisieras hacer el script con Node y JavaScript.
La segunda de las líneas haces un echo. Este comando escribe el argumento que le pasas a la salida estándar. Así cuanto le has dicho echo Hola mundo, lo que hace es escribir en la salida estándar Hola mundo.
Conclusión sobre Scripts en Bash
Ya has visto lo sencillo que ha sido crear tu primer script. Ahora todo es cuestión de profundizar en el maravilloso mundo del scripting.
Comments