Tutorial De Shell

Páginas: 28 (6764 palabras) Publicado: 10 de junio de 2012
1. Introducción
Lo primero es lo primero: no soy un experto (ni mucho menos) en la programación en shell, pero hace un tiempo me interese por ella e intenté aprender lo que pude de un libro y unos apuntes. El libro es ``UNIX shell programming'', de Stephen G. Kochan y Patrick H. Wood, de Hayden books UNIX system library (que a su vez pertenece a Prentice-Hall), ISBN 0-672-48448-X. Es necesarioque consigas ese libro (que por otro lado es absolutamente genial) u otro si realmente necesitas saber programar bien en shell. Esto más que nada es una introducción a la programación, para hacer algunos programas sencillos y para hacerte una idea de cómo es programar en shell.
La programación en shell se basa en el uso de las herramientas del sistema, y el UNIX es un sistema operativo (UNIX y susclones) 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 intérprete compatible con el sh, como el propio sh, el Korn Shell o el bash de Linux. También hay que tener una ciertasoltura con sistemas UNIX (saber lo que son los permisos de los ficheros, conocer las órdenes básicas, etc.), y tener cierta idea de las cosas que ofrece el intérprete (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 deherramientas 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 enlace en la página de UNIX).
Si estás acostumbrado o al menos conoces el MS-DOS, puedes pensar que laprogramació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 ...).
También sería bastante bueno, en realidad más para manejar las herramientas del sistema que para la programación en shell en sí, que tuvieras conocimiento de las expresionesregulares (hay una pequeña lista en mi página de trucos de UNIX).
Y tú te preguntarás: ¿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 enshell, que, por ejemplo, en C.
2. ¿Qué es un guión (script)?
Un guión o script es un fichero de texto que contiene una serie de instrucciones que se pueden ejecutar en la línea de órdenes, y que se ejecutarán seguidas. En ese sentido son iguales que los ficheros con extensión BAT de MS-DOS, aunque, por supuesto, como en los sistemas UNIX no existe el concepto de extensión, pueden tenercualquier nombre. El único requisito es que ese fichero de texto tenga permiso de ejecución para la persona que intenta ejecutarlo. Alternativamente, puedes llamar al intérprete y darle como parámetro el nombre del guión, pero es más cómodo dar permiso de ejecución al guión para ahorrarnos escribir el nombre del intérprete.
Esas instrucciones se procesarán por orden, como si alguien las escribiera en...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Tutorial Shell
  • Shell
  • SHELL
  • Shell
  • Shell
  • Shell
  • Shell
  • Shell

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS