===== 6. Scripting ===== ==== Objetivos ==== Aprender lo mínimo necesario para escribir y ejecutar un script de shell. ==== 6.1. [ ] Conceptos básicos ==== Un script es básicamente un archivo de texto con comandos dentro. Estos comandos son ejecutados mediante un intérprete. En el caso de Linux, el más común es Bash. Los scripts permiten automatizar tareas repetitivas, evitando el error humano, y ahorrando tiempo. Por ejemplo, si se necesita realizar una limpieza de archivos temporales una vez por mes, si se necesita un backup diario de los archivos de usuarios, revisar el estado de los servicios, el espacio en disco, y cualquier tarea que requiera ejecutar una serie de comandos. Intérpretes de comandos hay muchos además de Bash. Entre ellos podemos nombrar Python, Perl, PHP, y Ruby. Cada script debe comenzar con una línea específica, que indica qué programa debe usar el kernel para interpretarlo: #!/bin/bash Para ser ejecutado, el archivo de texto debe tener permisos de ejecución: chmod a+x script ==== 6.2. [ ] Ejemplos ==== Primer script #!/bin/bash # Variable alfanumerica CADENA="Este es un primer script" # Imprimir la variable por la pantalla echo $CADENA # Salida de error stderr cero exit 0 Segundo script #!/bin/bash DIRE="/sbin" # Para cada elemento en $DIRE evaluar que tipo de archivo es for i in `ls $DIRE` do file $DIRE/$i done exit 0 Tercer script #!/bin/bash # Si el numero de procesos httpd es mayor a cero significa que Apache esta ejecutandose APA=`ps ax | grep "httpd" | grep -v "grep" | wc -l` if [ $APA -gt 0 ] then echo "Apache esta corriendo" else echo "Apache esta detenido" fi exit 0