![]() |
Terminal |
Realizar un tutorial sobre scripting, de momento con este artículo, no es mi prioridad, quizá realice alguna aportación en futuras entregas puesto que el mundo del shell scripting es bastante jugoso. En este artículo si pondré algún ejemplo sencillito y enlaces a tutoriales que considero buenos.
El ejemplo que utilizaré como introducción a este mundillo, se trata de algo sencillo. Para los que conozcáis el misterioso mundo de los intérpretes de comandos, sabréis que para ejecutar un archivo como script simplemente tenéis que crear un archivo sin extensión o con la extensión '.sh' y en la cabecera es recomendado poner el intérprete a usar, por ejemplo:
#!/bin/bashCon esta línea, indicaremos que se usará BASH, como intérprete del script.
Una vez guardado el archivo procederemos a darle permiso de ejecución:
$chmod +x nombre_de_nuestro_script,y para ejecutarlo:
$./nombre_de_nuestro_scriptO lo ejecutamos con el comando sh:
$sh nombre_de_nuestro_scriptAhora que ya sabemos la mecánica de ejecución, vamos al código de nuestro script, en este caso vamos a realizar una calculadora bastante simple, solo contendrá: suma, resta, multiplicación y división entera.
Aquí va el código:
Como véis en el código anterior, usamos un bucle while para continuar mostrando el menú, hasta que se pulse 's' o 'S'. Con el comando break rompemos el bucle y salimos del programa. El comando echo nos muestra mensajes y con la primitiva '-n' provocamos que no salte linea a la hora de realizar el read con el que pedimos datos para seleccionar que opción del menú deseamos. Clear limpia la pantalla, dando al programa un aspecto más amigable al usuario. Case es el equivalente a switch en lenguajes de tercer nivel como Java, C, o Python. Con $1 y $2, nos referimos a los parámetros de entrada, es decir, podríamos pedir (como hicimos al pedir la opción), que el usuario introduzca por teclado, mientras el script se está ejecutando, los números con los que se realizarán las opciones, yo os he querido dar una pequeña vista de como funcionan los parámetros y la introducción de términos de las operaciones, se lleva a cabo al ejecutar el script. Me explico, para introducir un parámetro a la hora de ejecutar un script, simplemente al realizar el:#!/bin/bashwhile :doecho "1.- Sumar"echo "2.- Restar"echo "3.- Multiplicar"echo "4.- Dividir"echo "(s/S) Salir"echo -n "Introduzca opcion: "read OPclearcase $OP in1) echo "Resultado: " `expr $1 \+ $2`echo "";;2) echo "Resultado: " `expr $1 \- $2`echo "";;3) echo "Resultado: " `expr $1 \* $2`echo "";;4) echo "Resultado: " `expr $1 \/ $2`echo "";;s|S) break;;esacdone
$./nombre_del_script,o el:
$sh nombre_del_scriptsolo tendremos que añadir los parámetros al final de la sentencia, separados con espacios, de este modo:
$./nombre_del_script param1 param2
$sh nombre_del_script param1 param2Para finalizar este artículo, añado un link con el script en un archivo con extension '.sh' y una relación de links con tutoriales interesantes.
Calculadora.sh
Tutoriales:
-Para principiantes (está en inglés, pero es facilmente entendible): link
-Algo mas avanzado (también en inglés): link
Me alegra encontrar convencidos del bash como yo. Si además de esto tu sc cript lo integras con dialog te queda genial!
ResponderEliminarhttp://www.linuxjournal.com/article/2807