Script de shell
Un guion de concha o guion de shell (en inglés shell script) es un programa de ordenador diseñado para ser ejecutado por el shell de Unix, un intérprete de línea de comandos.[1] Los varios dialectos de guiones de shell están considerados como lenguajes de guionado o de scripting. Las operaciones típicas ejecutadas por los guiones de shell incluyen manipulación de archivos, ejecución de programas e impresión de texto. Un guion que instala el entorno, ejecuta el programa y hace el cleanup (limpieza), logging, etc. necesario, se conoce como wrapper o envoltorio.
![](../I/FreeBSD_10_vi_RC_Firewall.png.webp)
El término también se utiliza de forma más general para significar el modo automatizado de correr un shell de sistema operativo; en sistemas operativos concretos se denominan de otra forma como archivos de lote o batch files (MSDos-Windows95, OS/2), procedimientos de comandos (VMS), y guiones de shell (Windows NT y derivados de terceras partes como 4NT), y sistemas operativos de mainframes están asociados con un número de términos.
La instalación típica de Unix/Linux/POSIX incluye el KornShell (ksh
) en varias versiones posibles como ksh88, Korn Shell '93 y otros. El shell más viejo todavía en uso común es el Shell Bourne (sh
); los sistemas de Unix invariablemente también incluyen el Shell C (csh
), Bash (bash), un Shell Remoto (rsh
), un Shell Seguro (ssh
) para conexiones SSL telnet conexiones, y un shell que es el principal componente de la instrucción Tcl/Tk normalmente llamada tclsh; wish es un shell Tcl/Tk basado en GUI (gráfica). Los shells C y Tcl tienen sintaxis bastante similares a aquello de los lenguajes de programación, y los shells Korn y Bash son desarrollos del Bourne Shell, que está basado en el lenguaje ALGOL con elementos de un número de otros que también se han añadido.[2] Por otro lado, los distintos shells más herramientas, como awk, sed, grep, y BASIC, Lisp, C y similares contribuyeron al lenguaje de programación de Perl .[3]
Otros shells disponibles en máquinas o disponible para descarga y/o la compra incluyen el shell Almquist (ash o ceniza
), PowerShell (msh
), Shell Z (zsh
, una especie de KornShell ampliado), el Shell Tenex C (tcsh
), un shell de tipo Perl (psh
). Programas relacionados como shells basados en Python, Ruby, C, Java, Perl, Pascal, Rexx &c en varias formas, están también ampliamente disponibles. Otro shell poco común es osh, cuya página del manual declara que "es una portación o port retro-compatible del intérprete de órdenes de comandos de Sixht Edition UNIX."[4]
Software de interoperabilidad Windows- Unix, como MKS Toolkit, Cygwin, UWIN, Interix y otros, ponen disponible los shells indicados y programación Unix en sistemas Windows, proporcionando funcionalidad a señales y otros procesos de inter-comunicación, llamadas de sistema y APIs. El shell Hamilton C es un shell de Wiindows que es muy similar al shell de Unix C. Microsoft distribuye Servicios de Windows para UNIX para usar con sus sistemas operativos basados en NT en particular, los cuales tienen un subsistema ambiental. POSIX
Véase también
- Código de pegamento
- Directiva de intérprete
- Símbolo shebang (#!)
- Conchas o shells de Unix
- PowerShell
- Anfitrión de Guion de Windows (Windows Script Host)
- Evasión (seguridad de redes)
Referencias
- Kernighan, Brian W.; Pike, Rob (1984), «3. Using the Shell», The UNIX Programming Environment, Prentice Hall, Inc., p. 94, ISBN 0-13-937699-2, «The shell is actually a programming language: it has variables, loops, decision-making, and so on. ».
- Unix Shells By Example, pp 7-10,
- Programming Perl, 5th Edition, preface
- «osh - manned.org». manned.org. Consultado el 16 de enero de 2019.