shell scripts son listas de comandos, automatizados por la inclusión en un "script" que el sistema ejecuta una línea a la vez. Los scripts pueden ser considerados como los archivos de procesamiento por lotes avanzados que ejecutan una lista de comandos . Más que eso , los scripts pueden usar el control de los flujos similar a los lenguajes de programación para controlar cómo y por qué se ejecuta como parte de la secuencia de comandos . Si bien hay muchas conchas de diferentes sistemas Linux , una concha común es el shell Bash .
Simple Bash Scripting
Un script sencillo , escrito en un archivo de texto, puede ser similar a este ejemplo :
# /bin /bash
echo " $ USER "
la primera línea , "¡ # /bin /bash " indica el tipo de secuencia de comandos en el archivo contiene . El sistema puede leer esta línea ( llamada línea " tinglado ") y saber que este script usa las convenciones del lenguaje y comandos nativas de la shell Bash . El comando "echo ", escribe el texto en la pantalla , como un comando " print" en Python o " printf " en C " $ USER " es una variable del sistema , que contiene el nombre del usuario que ha iniciado sesión en .
Flow comandos y secuencias de comandos
más extensa script de ejemplo puede ser similar a esto:
# /bin /bash
< p! > NUM = 2
if [$ NUM - eq " 2 "] , luego
python
más
echo " Wrong Number "
fi
Este sencillo script se ejecuta en una sentencia condicional , utilizando la variable local " NUM " . Configuración NUM a 2, la secuencia de comandos comprueba la variable. Si los partidos variables 2 , a continuación, inicia el intérprete de Python ( exactamente el mismo que si el intérprete se invoca manualmente desde la línea de comandos ) . De lo contrario , el script imprime " Wrong Number " y se detiene .
Otros conchas
Aunque la mayoría de los sistemas se utiliza el Bourne Again Shell ( bash ) , existen otras conchas. Dentro de los sistemas Linux y Unix, existe la Bourne Shell (sh ), el shell C ( csh ) , la Concha de control de trabajos ( JSH ) y el Shell remoto ( rsh ) . La mayoría de las conchas comparten los mismos conceptos y empleos - la ejecución de archivos y el acceso a recursos del sistema de forma interactiva. Sin embargo , lo hacen a través de diferentes sintaxis y limitaciones , cada uno habiendo sido desarrollados por diferentes personas , en diferentes momentos , por diferentes sistemas.