next up previous contents
Next: Re-utilizaci�n de comandos Up: Interprete de comandos: Shell Previous: Tuber�as o pipes   Contents


Programaci�n shell

La programaci�n del shell es una de las herramientas mas apreciadas por todos los administradores y muchos usuarios de Linux/Unix ya que permite automatizar tareas complejas, comandos repetitivos y ejecutarlas con un solo llamado al script 3.1 o hacerlo autom�ticamente a horas escogidas sin intervenci�n de personas.

La programaci�n shell en Unix/Linux es, en cierto sentido, equivalente a crear archivos .BAT en DOS. La diferencia es que en Unix/Linux es mucho mas potente. Estos scripts pueden usar un sinn�mero de herramientas como:

El lenguaje de programaci�n de cada shell provee de una amplia gama de estructuras de control como se muestra en la tabla 3.7.

Instrucciones bash para programaci�n shell tbl_instr_bash

Un sencillo ejemplo es realizar un backup de solo ciertos directorios (prog_dir1 y prog_dir2), luego comprimirlos usando bzip2 y enviarlos a un area de almacenamiento (digamos una unidad ZIP previamente montada en /mnt/zipdrive), y adem�s con que el nombre del archivo contenga la fecha del d�a. Suena dif�cil? Realmente no lo es.

Se crea un archivo texto con cualquier nombre, por ejemplo mibackup que contenga las instrucciones que se desea ejecutar.

		#!/bin/sh
		#
		echo "---------- Captura fecha -----------"
		fecha=`date +%Y%m%d`
		#
		echo "---------- Haciendo Tar  -----------"
		tar cvf backup$fecha.tar prog_dir1 prog_dir2 
		#
		echo "----------- Comprimiendo -----------"
		bzip2 backup$fecha.tar
		#
		echo "---------- Envi�ndolos a zip -------"
		cp ./backup$fecha.tar /mnt/zipdrive
		#
		echo "----------- Limpiando --------------"
		rm -f ./backup$fecha.tar
		#
		echo "----------- Final      -------------"

Luego, se le asigna permisos de ejecuci�n con el comando

 chmod +x mibackup
y esta listo para ser ejecutado.

En el script aqu� mostrado es importante resaltar varios principios importantes: la primera l�nea determina el shell que se esta usando (sh o bash); las variables no se declaran solo se asignan; su valor es retornado usando el s�mbolo $.

Si desea mas informaci�n acerca de programaci�n en shell se puede consultar los manuales en l�nea del shell: bash o tcsh3.3.


next up previous contents
Next: Re-utilizaci�n de comandos Up: Interprete de comandos: Shell Previous: Tuber�as o pipes   Contents
2000-03-07