El Shell Bash y Bash es el principal componente de gestión para los sistemas Linux. Los comandos se ejecutan en bash para completar tareas o trabajos. Estos comandos se pueden almacenar en un archivo que se llama script de shell. El script de shell se utiliza para ejecutar uno o más comandos simplemente llamando al archivo de script de shell sin escribir comandos una y otra vez. Los scripts de shell tienen la extensión*. sh para el Bash o Sh. En este tutorial, aprenderemos a ejecutar archivos de script de shell de diferentes maneras.
Crear Script de Shell o Archivo de Script
Antes de comenzar a ejecutar un archivo de script de shell, creamos un archivo de script. Simplemente cree un archivo de texto con la extensión *.sh. A continuación, ponga algunos comandos de shell en él. En este ejemplo, creamos el script de shell llamado systeminfo.sh .
hostnamectlecho "This is a shell script."
Hacer ejecutable el script de Shell y Ejecutar
La forma más común de ejecutar o ejecutar un script de shell es hacerlo ejecutable y luego llamarlo. El archivo de shell es solo un archivo con algo de texto por defecto. Puede ser ejecutable por el shell usando el comando chmod. En el siguiente ejemplo hacemos la systeminfo.sh archivo de script de shell ejecutable para el usuario actual.
chmod u+x systeminfo.sh
Podemos comprobar si el archivo de script de shell es ejecutable con el comando ls como se muestra a continuación.
ls -l systeminfo.sh
La salida es como a continuación, donde el usuario tiene el permiso de ejecución que se representa con la letra x.
-rwxrw-r-- 1 ismail ismail 44 Oca 28 04:18 systeminfo.sh
Ahora podemos ejecutar o ejecutar el archivo de script directamente llamando con su nombre y ruta de acceso. Si el archivo de script está en el directorio de trabajo actual, se puede llamar como se indica a continuación.
./systeminfo.sh
Alternativamente, si el script de shell if es otro directorio, entonces el directorio de trabajo actual, podemos especificar la ruta completa o absoluta para ejecutarlo. Esta es la forma más confiable en la que el archivo de script se puede ejecutar correctamente para cada situación.
/home/ismail/systeminfo.sh
Ejecute el script de Shell Directamente con el comando bash
Cada comando de shell bash se interpreta y ejecuta a través del intérprete de bash. El intérprete de bash es un archivo ejecutable que se encuentra en / usr / bin / bash . Podemos ejecutar un archivo de script de shell que lo proporcione directamente en el binario de bash. Este método no requiere que el archivo de script sea ejecutable. En el siguiente ejemplo ejecutamos el archivo de script de shell a través de un binario bash o un comando.
bash ./systeminfo.sh
Alternativamente, se puede especificar la ruta completa del archivo de script de shell como se indica a continuación.
bash /home/ismail/systeminfo.sh
Ejecutar el script de Shell como Root
De forma predeterminada, el script de shell se ejecuta como el usuario actual con los privilegios de usuario actuales. Pero en algunos casos, es posible que necesitemos ejecutar el archivo de script de shell como root o con privilegios de root. Podemos usar el comando sudo durante la ejecución del archivo de script de shell.
sudo ./systeminfo.sh
Con la ruta absoluta del archivo de script de shell, el comando sudo se puede combinar como se muestra a continuación.
sudo /home/ismail/systeminfo.sh
Ejecutar script de Shell a través de GUI (Entorno de escritorio)
Los archivos de script de shell también se pueden ejecutar a través de la GUI o el entorno de escritorio. Pero primero debe habilitarse para la ejecución. Haga clic derecho en el archivo de script y haga clic en Propiedades como a continuación.
En las ventanas Propiedades, vaya a la ficha Permisos y compruebe la configuración de ejecución. Esto permite ejecutar el archivo como programa.
Depurar el script de shell Mientras se ejecuta
El archivo de script de shell es como una aplicación que ejecuta diferentes comandos. El script de shell se puede depurar para detectar fallos o errores. Además, el archivo de script de shell se puede depurar para obtener información detallada sobre la ejecución del script de shell. El parámetro-x se usa con el comando bash para depurar el archivo de script de shell.
bash -x ./systeminfo.sh
Guardar la salida del script de Shell En un archivo
Algunos scripts de shell crean una salida que se imprime en la salida o terminal estándar. Esta salida se puede redirigir fácilmente a un archivo utilizando el operador >. En el siguiente ejemplo, redirigimos el «systeminfo.sh salida de «script de shell en el archivo llamado».txt».
./systeminfo.sh > output.txt