La shell como lenguaje de programación.

Existen dos modos para escribir programas shell.

  1. Escribir la secuencia de comandos y permitir a la shell que los ejecute interactivamente.
  2. Guardar los comandos en un archivo y después invocarlos como si fuesen un programa.

Programas interactivos

Escribir el script de la shell en la línea de comando es un modo rápido y sencillo de comprobar pequeños fragmentos de códigos, y es muy útil cuando se está empezando o sencillamente como modo de comprobación.

Imagine que tiene un gran número de archivos C y que desea examinar los archivos que contiene la cadena POSIX. En vez de realizar la búsqueda usando el comando grep para la cadena de los archivos y después enumerar los archivos por separado, puede realizar toda la operación en un script interactivo:

programa_ejemplo_1
Observe como cambia el incitador shell normal & a un > cuando la shell espera más entradas. Puede dejar de escribir, permitiendo que la shell decida si ya ha acabado, y el script se ejecutará de manera inmediata. La shell también realiza expansión de comodines (que se suele conocer como globbing). Seguramente sea consciente del uso de ‘*‘ a modo de comodín para hacer corresponder a una cadena de carácteres. Pero es posible que no sepa que puede solicitar comodines de un sólo carácter usando ‘?‘, en tanto que [set] permite que se compruebe cualquier número de carácteres únicos. [^set] niega el conjunto, es decir, incluyen cualquier cosa excepto el conjunto especificado. La expansión de corchete usando {} (disponible en algunas shell, incluso en bash) le permite agrupar las cadenas arbitrarias en un conjunto que expandirá la shell. Por ejemplo:

expansiones
enumerará los archivos Mi_perros y Mi_gatos. este comando usa la shell para comprobar todos los archivos del directorio actual.

 

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s