Debido a que el lunes presento un examen de sistemas operativos totalmente practico de programación en terminal unix he decidido ponerme a estudiar un poco y que mejor que publicando unos pequeños tutoriales para que se queden aquí por si algún día mas requiero de alguna cosa de estas.

Hacia mucho que no programaba en shell, y aunque el curso se centra en sistemas unix, pues optaremos por un sistema de tipo unix (GNU/Linux Debian) y programando sobre bash y no korn shell como bien la profesora lo pide. ¿por que bash y no ksh? pues por la sencilla razón de que Linux trae por defecto terminales tipo bash y así no tendríamos que instalar ksh. Además, el uso que le daremos no será de gran importancia para optar por ksh.

Introducción:

Los scripts que podemos programar bajo shell son de gran utilidad para un sin fin de cuestiones, como por ejemplo ahorrarnos el tener que escribir grandes cantidades de comandos para bajar una lista de videos de youtube con sencillas expresiones regulares, buscar archivos, renombrar directorios recursivamente. o hasta posibles exploits para nuestros ataques mágicos.

Usaremos nuestro editor de textos favorito, así que yo propongo " nano " ya que estamos sobre terminal.

Nuestro primer programa:

Bien, como estamos acostumbrados:

$nano script01
#!/bin/bash
echo "Hola mundo"
$chmod +x script01

Este es nuestro programa al que llamamos script01 (lo creamos con nano script01 ), le damos permisos de ejecución con chmod +x script01 , y podremos ejecutarlo con ./script01 obteniendo una salida como esta:

$./script01
Hola mundo

Como en todos los lenguajes, en los scripts bash tambien podemos hacer uso de comentarios para documentar nuestros scripts con el caracter #. Tambien podemos notar que en la primer linea del programa script01 empieza con #!/bin/bash , que como es tradicional en los scripts nos indica donde se encuentra el interprete. El comando para mandar a pantalla es echo como bien lo pudimos notar.

Jorge Hernandez :: http://jorgeluis.com.mx

Publicaciones que te pueden interesar...

Programación en Bash Linux V: Estructuras [case]

Programación en Bash Linux II: Variables y Argumentos