|
INTRODUCCIÓN
La programación en shell se basa en el uso de las herramientas del
sistema, y el UNIX es un sistema operativo (UNIX y sus clones) que cuenta con bastantes
herramientas de proceso y filtrado de textos y de control de procesos, entre otras. Por
ello, permite automatizar procesos repetitivos, que hechos a mano serían engorrosos y
lentos.
Para poder utilizar este tutorial hay que tener acceso a un shell
compatible con el sh, como el propio sh, el Korn Shell o el bash de Linux. Hay que tener
cierta idea de las cosas que ofrece el shell (sustitución de caracteres especiales por
nombres de ficheros, redirecciones de las entradas y salidas, etc.)
Para poder utilizar los conocimientos que pretende facilitar este
tutorial, hay que conocer el mayor número posible de herramientas del sistema, como
pueden ser el grep, el wc, sort, tr, sed, cut y awk (el awk es casi un lenguaje de
programación aparte, aunque puede servir perfectamente como complemento para la
programación en shell. Hay un tutorial de awk muy bueno en algún sitio de INet, a donde
tengo un link en la página de UNIX).
Si estás acostumbrado o al menos conoces el MS-DOS, puedes pensar que
la programación en shell es algo parecido a los ficheros BAT del primero, aunque la
diferencia entre ellos es más o menos igual de grande que la existente entre los sistemas
UNIX y el MS-DOS (por versatilidad, por potencia, por diseño ...).
¿Por qué programar en shell y no en un lenguaje de alto nivel? Pues
depende de para qué lo utilices. Lo mejor es saber las dos cosas y aplicarlas cuando sean
más adecuadas.
La programación en shell es muy útil y cómoda para crear programas
fácilmente modificables, pequeños, que resuelvan tareas repetitivas, como por ejemplo
comprobar ciertas condiciones cada cierto tiempo (ejecutándolos en segundo plano, claro),
o para ejecutar órdenes muy largas con frecuencia (para no tener que escribir una orden
larga o varias órdenes seguidas todo el tiempo) Además, si el programa no requiere mucha
potencia pero si comodidad a la hora de manejar ristras y procesar y filtrar texto, es
mucho más fácil programar en shell, que, por ejemplo, en C.
|