
El intérprete de comandos o "shell" de UNIX es también un lenguage de programación completo. La programación de shell se usa mucho para realizar tareas repetidas con frecuencia. Los diseñadores de sistemas suelen escribir aplicaciones en el lenguaje de base del sistema operativo, C en el caso de UNIX, por razones de rapidez y eficiencia. Sin embargo, el shell de UNIX tiene un excelente rendimiento en la ejecución de "scripts" (guiones); ésta es la denominación aplicada a los programas escritos en el lenguaje del shell. Se han creado aplicaciones completas usando solamente scripts.
Mediante
las instrucciones que aporta el intérprete, el usuario puede comunicarse con el
núcleo y por extensión, ejecutar dichas órdenes, así como herramientas que le
permiten controlar el funcionamiento de la computadora.
Los
comandos que aportan los intérpretes, pueden usarse a modo de guion si se
escriben en ficheros ejecutables denominados shell-scripts, de este modo,
cuando el usuario necesita hacer uso de varios comandos o combinados de
comandos con herramientas, escribe en un fichero de texto marcado como
ejecutable, las operaciones que posteriormente, línea por línea, el intérprete
traducirá al núcleo para que las realice. Sin ser un shell estrictamente un
lenguaje de programación, al proceso de crear scripts de shell se le denomina
programación shell o en inglés, shell programming o shell scripting.
En
el sentido más genérico del término, shell significa cualquier intérprete que
los usuarios usen para escribir comandos. Su etimología proviene del uso
natural de consolas en computadores funcionando bajo unix antaño, cuando los
usuarios conectaban al computador central, lo hacían mediante consolas,
(shells) por las cuales a través de un intérprete, hacían inicio de sesión y
manejaban la computadora principal. Posteriormente, con la proliferación de los
computadores personales y su filosofía monousuario, un computador por usuario
(entiéndase lo contrario de la filosofía inicial de Unix, un computador, muchos
usuarios conectados por terminales), se desarrolló un software que emulase las
características principales de las consolas físicas, a modo de poder seguir
usándolas como clientes en un computador o núcleo que comprendiera la
convención estándar usada para configurar y llevar a cabo tareas de
administración de emergencia con servidores basados en Unix.
Los
usuarios de Unix y similares, pueden elegir entre distintos shells (programa
que se debería ejecutar cuando inician la sesión, véase bash, ash, csh, Zsh,
ksh, tcsh). Las interfaces de usuario gráficas para Unix, como son GNOME, KDE y
Xfce pueden ser llamadas shells visuales o shells gráficas. Por sí mismo, el
término shell es asociado usualmente con la línea de comandos. En Unix,
cualquier programa puede ser un shell de usuario. Los usuarios que desean
utilizar una sintaxis diferente para redactar comandos, pueden especificar un
intérprete diferente como su shell de usuario.
El
término shell también hace referencia a un programa particular, tal como el
Bourne shell, sh. El Bourne shell fue el shell usado en las primeras versiones
de Unix y se convirtió en un estándar de facto; todos los sistemas similares a
Unix tienen al menos un shell compatible con el Bourne shell. El programa
Bourne shell se encuentra dentro de la jerarquía de archivos de Unix en
/bin/sh. En algunos sistemas, tal como BSD, /bin/sh es un Bourne shell o un
equivalente, pero en otros sistemas como muchas distribuciones de Linux,
/bin/sh es un enlace simbólico a un shell compatible con más características
(como Bash). POSIX especifica su shell estándar como un subconjunto estricto del
Korn shell.
Variables
del shell
Las
variables que hemos examinado hasta este punto son variables de usuario. Una
variable
de
usuario es aquella que el usuario puede definir y eliminar de forma manual.
Las
variables del shell, son variables que el shell define durante su inicializacion
y las utiliza
internamente
para realizar ciertas tareas.
La
siguiente tabla provee una lista parcial de las variables del shell bash y su
funcion:
Variables
del shell
Las
variables que hemos examinado hasta este punto son variables de usuario. Una
variable
de
usuario es aquella que el usuario puede definir y eliminar de forma manual.
Las
variables del shell, son variables que el shell define durante su inicializacion
y las utiliza
internamente
para realizar ciertas tareas.
La
siguiente tabla provee una lista parcial de las variables del shell bash y su
funcion:

No hay comentarios.:
Publicar un comentario