GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo ejecutar un script Bash

Como administrador del sistema, es muy probable que haya escrito algunos scripts de Bash para automatizar su trabajo.

Por ejemplo, es posible que desee ejecutar secuencias de comandos de Bash para hacer una copia de seguridad de su trabajo o para registrar algunos eventos que ocurren en su servidor.

Los scripts de Bash, al igual que los scripts escritos en otros lenguajes de programación, se pueden ejecutar en una amplia variedad de formas.

En este tutorial, nos centraremos en todas las formas de ejecutar un script Bash en Linux .

Requisitos

Antes de poder ejecutar su script, necesita que su script sea ejecutable .

Para hacer que un script sea ejecutable en Linux, use el comando "chmod" y asigne permisos de "ejecución" al archivo.

Puede usar la notación binaria o simbólica para hacerlo ejecutable.

$ chmod u+x script

$ chmod 744 script

Si no es el propietario del archivo, deberá asegurarse de pertenecer al grupo correcto o de que se hayan otorgado permisos al "otro" grupo en su sistema.

Algunas distribuciones resaltarán su archivo en un color diferente cuando su archivo sea ejecutable.

Ahora que su archivo es ejecutable, veamos cómo puede ejecutar fácilmente su script Bash.

Ejecutar Bash Script desde la ruta del script

Para ejecutar un script Bash en Linux, simplemente especifique la ruta completa al script y proporcione los argumentos que pueda necesitar para ejecutar su script Bash.

$ /path/to/script <arg1> <arg2> ... <argn>

Como ejemplo, supongamos que tiene un script Bash ubicado en su directorio de inicio.

Para ejecutar este script, puede especificar la ruta completa al script que desea ejecutar.

# Absolute path

$ /home/user/script 

# Absolute path with arguments

$ /home/user/script "john" "jack" "jim"

Alternativamente, puede especificar la ruta relativa al script Bash que desea ejecutar.

# Relative path

$ ./script

# Relative path with arguments

$ ./script "john" "jack" "jim"

Impresionante, aprendiste cómo puedes fácilmente ejecutar un script Bash en su sistema.

Ejecutar Bash Script usando bash

Para ejecutar un script Bash en su sistema, debe usar el comando "bash" y especificar el nombre del script que desea ejecutar, con argumentos opcionales.

$ bash <script>

Alternativamente, puede usar "sh" si su distribución tiene instalada la utilidad sh.

Como ejemplo, supongamos que desea ejecutar un script de Bash llamado "script".

Para ejecutarlo usando la utilidad "bash", debe ejecutar el siguiente comando

$ bash script

This is the output from your script!

Ejecute el script Bash usando sh, zsh, dash

Según su distribución, es posible que tenga otras utilidades de shell instaladas en su sistema.

"Bash" es el intérprete de shell instalado de forma predeterminada, pero es posible que desee ejecutar su secuencia de comandos utilizando otros intérpretes.

Para verificar si un intérprete de shell está instalado en su sistema, use el "cuál ” comando y especifique el intérprete que está buscando.

$ which sh

/usr/bin/sh

$ which dash

/usr/bin/dash

Siempre que haya identificado el intérprete de shell que desea usar, simplemente llámelo para ejecutar su secuencia de comandos fácilmente.

Ejecute el script Bash desde cualquier lugar

En algunos casos, es posible que desee ejecutar secuencias de comandos de Bash dondequiera que se encuentre en su sistema.

Para ejecutar un script de Bash desde cualquier parte de su sistema, debe agregar su script a su variable de entorno PATH.

$ export PATH="<path_to_script>:$PATH"

Ahora que la ruta al script se agregó a PATH, puede llamarlo desde donde desee en su sistema.

$ script

This is the output from script!

Alternativamente, puede modificar la variable de entorno PATH en su archivo .bashrc y usar el comando "fuente" para actualizar su entorno Bash actual.

$ sudo nano ~/.bashrc

export PATH="<path_to_script>:$PATH"

Salga del archivo y obtenga su archivo bashrc para que se apliquen los cambios.

$ source ~/.bashrc

$ echo $PATH

/home/user/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games

¡Estupendo! Ahora su secuencia de comandos se puede ejecutar desde donde desee en su sistema .

Ejecute Bash Scripts desde la interfaz gráfica

La última forma de ejecutar scripts Bash es usar la interfaz gráfica, en este caso la interfaz GNOME.

Para ejecutar sus scripts con GNOME, debe configurar el comportamiento del Explorador de archivos para "Preguntar qué hacer" para los archivos ejecutables.

Para lograrlo, en “Archivos “, haga clic en el icono de la línea superior derecha y seleccione “Preferencias “.

En el menú, haga clic en “Comportamiento ” y seleccione “Preguntar qué hacer ” en “Archivos ejecutables ” sección.

Cierre esta ventana y haga doble clic en el archivo de script que desea ejecutar.

Al hacer doble clic, se le presentan varias opciones:puede optar por ejecutar su secuencia de comandos (en una terminal o no) o simplemente mostrar el contenido del archivo.

En este caso, nos interesa ejecutar este script en la terminal , así que haga clic en esta opción.

¡Éxito! Su secuencia de comandos se ha ejecutado con éxito dentro de una nueva instancia de shell .

Conclusión

En este tutorial, aprendió cómo puede ejecutar scripts de Bash fácilmente. en su sistema, ya sea especificando la ruta al script o los intérpretes disponibles en su host.

Aprendió que puede hacerlo aún más fácil agregando la ruta de su secuencia de comandos a su variable de entorno PATH o usando las funciones existentes en la interfaz de usuario de GNOME.

Si está interesado en la administración del sistema Bash o Linux, tenemos una sección completa dedicada a ello en el sitio web, ¡así que asegúrese de consultarla!


Linux
  1. ¿Cómo ejecutar comandos bash de Linux en un script PERL?

  2. ¿Cómo depurar un script Bash?

  3. ¿Cómo ejecutar un script?

  4. ¿Cómo ejecutar un script de shell en una consola Unix o terminal Mac?

  5. Cómo ejecutar un script de shell al inicio

Cómo ejecutar un script Bash {7 métodos}

Cómo escribir un script Bash con ejemplos

Cómo ejecutar el comando / secuencia de comandos de Linux Shell en segundo plano

Cómo ejecutar un script de Python en PHP

¿Cómo pasar parámetros a un script Bash?

Ejecute el script bash después de iniciar sesión