Actualizado el viernes, 27 octubre, 2023
Bash Script es el intérprete de comandos que te facilitará la automatización de tareas repetitivas en Linux. Vamos a explicar de forma breve y sencilla como puedes comenzar a dar tus primeros pasos con Bash:
Índice de contenidos
¿Qué es Bash?
Bash (Bourne Again Shell) es un intérprete de comandos que actúa como interfaz entre el kernel Linux y los usuarios o programas. Su funcionamiento se basa en ejecutar una a una las instrucciones que introduce el usuario o que forman parte de un script, y a continuación devolver unos resultados. Bash no es una terminal, es solo una de las varias shell que hay disponibles en Unix.
¿Qué es un Script?
Pues para definirlo de forma sencilla, un script es simplemente un archivo de texto, en el que se han escrito una serie de comandos para shell. Es por eso que su nombre viene del término inglés script, que significa guion.
Estos archivos de texto ejecutan las órdenes de forma secuencial (de arriba hacia abajo) y en esencia sirven para que podamos escribir en él todo lo que necesitamos hacer. Solo con ejecutarlo, se realizarán las instrucciones que hayamos especificado
Son muy comunes cuando se trata de montar pequeños programas que realizan tareas repetitivas: listar, directorios, hacer backups, cambiar permisos, comprimir, archivar y un largo etcétera.
Los scripts se pueden crear con editores de texto tipo VIM o Nano, y los de Bash pueden identificarse si incluyen #!/bin/bash en la primera línea. La extensión es .bs para estos archivos.
¿Para qué es útil Bash Script?
Los Bash Script son extremadamente útiles. Su principal función es la automatización y estos son algunos de sus beneficios:
- La utilidad principal de Bash Script es ayudarte a ahorrar tiempo, puesto que te permite realizar tareas repetitivas, tantas veces como desees.
- Los scripts pueden ser ejecutados mediante tareas Cron.
- Proporciona una secuencia de actividades bien estructurada, modular y formateada.
- Permite facilitar valores dinámicos a los comandos, mediante el uso de argumentos de línea de comando.
- Simplifica comandos complejos o múltiples comandos en una sola línea o unidad de ejecución.
- Aporta mayor facilidad para la depuración de comandos.
- Permite una mayor transparencia, ya que son mucho más sencillos de analizar y revisar.
Primeros pasos en Bash
Antes de nada, para comenzar a dar tus primeros pasos en Bash Script debes conectarte mediante SSH a tu hosting.
Una vez dentro, puedes consultar las opciones disponibles para Bash escribiendo el siguiente comando:
dominio-ejemplo@servidor:~$ man bash
A continuación se mostrarán las opciones del manual, como se ve a continuación:
Estas opciones te resultarán muy útiles sobre todo si no tienes conocimientos previos.
Para crear tu primer script, tienes que usar un editor de texto como VIM (Vi IMproved) ) o NANO (GNU nano). En este ejemplo usaremos VIM:
Ejecutamos la siguiente instrucción, y pulsamos Intro:
dominio-ejemplo@servidor:~$ vim mi_primer-script.sh
De esta forma estaremos editando el contenido de nuestro script mi_primer_script.sh:
Pulsamos la tecla i para entrar en el modo de edición y poder escribir, y abajo se mostrará INSERT, que nos indica que hemos pasado a modo ‘inserción’.
Ahora, en la primera línea, escribimos una línea con la que debe comenzar siempre todo script:
#!/bin/bash
Ahora ya podemos incluir las instrucciones que queremos que se ejecuten.
Vamos a ilustrarlo con algunos ejemplos muy sencillos:
- Este script solo mostrará por pantalla el clásico ¡Hola mundo!
$ cat mi_primer-script.sh #!/bin/bash echo ¡Hola mundo! :-)
- Si queremos que al ejecutar el script se puedan mostrar los directorios y archivos de mi hosting, podemos indicar:
$ cat mi_primer-script.sh #!/bin/bash ls -lah
Si queremos que se muestre el espacio ocupado, escribimos esto
$ cat mi_primer-script.sh #!/bin/bash du --max-depth=1 -h
Una vez escritas las instrucciones que queremos incorporar al script, pulsamos:
- ESC para salir del modo edición de Vim
- Luego W para guardar lo que hemos escrito
- Por último Q para salir.
Comprobamos que se ha creado el archivo:
$ ls -lat -r
-rw-r–r– 1 dominio-ejemplo dominio-ejemplogrp 33 Feb 4 12:40 mi_primer-script.sh
¿Cómo ejecuto mi Script?
Debemos darle permisos de ejecución, o nos mostrará un error que indica que los permisos son insuficientes:
$ chmod +x mi_primer-script.sh
Comprobamos que ahora el fichero tiene permisos de ejecución:
-rwxr-xr-x 1 dominio-ejemplo dominio-ejemplogrp 33 Feb 4 12:44 mi_primer-script.sh
A continuación, ejecutamos el script y comprobamos que funciona:
Podemos hacerlo de dos formas diferentes:
- Usando el comando sh:
$ sh /ruta/mi_primer-script.sh
- o bien, si nos encontramos en el mismo directorio:
$ ./mi_primer-script.sh 127M ./www 4.0K ./.ftp-users 4.0K ./.cuentas 196K ./logs ...
Ten en cuenta que puedes configurar tareas programadas en las que programar que tu script se ejecute en el momento que tú elijas. Esperemos que esta guía de primeros pasos en Bash Script te haya resultado de utilidad.
¿Utilizas Bash Script? ¿Cuáles son tus comandos favoritos? ¡Cuéntanoslo en los comentarios! Estaremos encantados de leerte 🙂
Deja una respuesta