Introducción
Los scripts Bash son programas que ayudan a automatizar tareas. Los scripts almacenan comandos que a menudo van juntos, como actualizaciones y actualizaciones, para realizar ciertas tareas automáticamente. Después de crear dichos programas, hay varias formas de ejecutar el archivo y ejecutar los comandos a través de la línea de comandos o terminal.
Siga este tutorial para aprender a ejecutar un script Bash usando varios métodos.
Requisitos previos
- Acceso a la línea de comando/terminal (CTRL +ALT +T ).
- Comandos esenciales de terminal de Linux. Si necesita un repaso, consulte nuestra hoja de trucos de comandos de Linux.
- Un archivo de script Bash.
- Un editor de texto, como Vi/Vim o Nano.
Ejecutar secuencia de comandos Bash usando sh
Para ejecutar un script Bash usando sh
, ingresa el siguiente comando en la terminal:
sh <script name> <arguments>
Por ejemplo:
sh script.sh
El sh
se conoce como el concha de Bourne , y era el intérprete de línea de comandos predeterminado para sistemas más antiguos. Aunque ya no son tan populares, los sistemas modernos similares a Unix incluyen el intérprete en /bin/sh .
Sin embargo, el /bin/sh a menudo se vincula a un intérprete diferente. Para comprobar qué intérprete sh
utiliza, ejecute el siguiente comando:
ls -l /bin/sh
El resultado muestra el enlace simbólico para sh
intérprete. Comúnmente, Debian y los sistemas basados en Debian (como Ubuntu) vinculan sh
para correr , mientras que otros sistemas enlazan con bash .
Ejecutar Bash Script usando bash
Para ejecutar un script Bash usando bash
, introduce:
bash <script name> <arguments>
Por ejemplo:
bash script.sh
La fiesta intérprete es un acrónimo de Bourne Again Shell y un reemplazo para el Bourne Shell (sh
). El intérprete reside en /bin/bash .
Ejecutar Bash Script usando la fuente
El comando fuente ejecuta comandos desde un archivo específico, incluidos los scripts de Bash. La sintaxis general es:
source <path>/<file name> <arguments>
Alternativamente, use:
. <path>/<file name>
Por ejemplo:
source script.sh
. script.sh
El parámetro de ruta es opcional. En ese caso, el comando busca a través de los directorios en el $PATH
Variable ambiental. Sin embargo, si el archivo no está en $PATH
, el comando busca el directorio actual para el archivo.
Utilice este método para ejecutar secuencias de comandos de Bash dentro de otras secuencias de comandos de Bash.
Ejecute Bash Script especificando la ruta
Otra forma de ejecutar un script es especificar la ruta. Este método requiere el permiso del archivo para ser ejecutable. Sin cambiar los derechos de acceso, obtiene un Permiso denegado error.
Para hacer que un archivo sea ejecutable, ejecute el siguiente comando en la terminal:
chmod +x <file name>
Ahora, ejecute el script con:
<path to script>/<file name> <arguments>
Las diferentes sintaxis de ruta asumen la ubicación del script o su ubicación actual:
- La ruta absoluta funciona independientemente de la ubicación actual:
/home/kb/script.sh
- La ruta relativa requiere que el script esté en la ubicación actual:
./script.sh
- La abreviatura
$HOME
la ruta requiere que el script esté en /home/, independientemente de su ubicación actual:
~/script.sh
Cambiar los permisos a ejecutable y especificar la ruta es el método más común y versátil para ejecutar scripts de Bash.
Ejecutar Bash Script con Argumentos
Si un script de Bash requiere argumentos, proporcione el argumento después del nombre del script. Todos los métodos para ejecutar scripts desde la terminal aceptan los argumentos de entrada del usuario de la misma manera.
Por ejemplo:
./script.sh Hello
bash script.sh Goodbye
Para argumentos múltiples, separe cada uno por un espacio.
Ejecute Bash Script usando la GUI
Para ejecutar secuencias de comandos mediante la GUI, cambie el comportamiento del explorador de archivos antes de ejecutar la secuencia de comandos.
Para hacerlo:
1. Abra Archivos y haga clic en el icono superior derecho.
2. Seleccione Preferencias de la lista.
3. Haga clic en Comportamiento pestaña en el menú. Luego, seleccione Preguntar qué hacer en los archivos de texto ejecutables sección.
4. Cierre el menú y haga doble clic en el archivo de script. Aparece un mensaje con varias opciones.
Seleccione Ejecutar en terminal opción para ejecutar el script.
Ejecute Bash Script desde cualquier lugar
Para ejecutar un script desde cualquier lugar, siga las instrucciones a continuación.
1. Abra el .bashrc archivo usando un editor de texto:
vim ~/.bashrc
2. Exporte la ruta del script a $PATH
variable de entorno agregando la siguiente línea a .bashrc archivo:
export PATH="<path to script>:$PATH"
Por ejemplo:
export PATH="/home/kb/scripts/:$PATH"
Agregue la línea al final del archivo.
3. Guarda los cambios y cierra Vim:
:wq
4. Fuente el .bashrc archivo para aplicar las actualizaciones:
source ~/.bashrc
5. Por último, ejecute el script en la terminal desde cualquier ubicación indicando el nombre del script:
script.sh
El método agrega permanentemente la ruta del script, haciéndolo disponible en cualquier sesión de terminal.