KornShell

Compartir Imprimir Citar

KornShell (ksh) es un shell de Unix que fue desarrollado por David Korn en Bell Labs a principios de la década de 1980 y anunciado en USENIX el 14 de julio de 1983. El desarrollo inicial se basó en el código fuente de Bourne Shell. Otros de los primeros colaboradores fueron los desarrolladores de Bell Labs, Mike Veach y Pat Sullivan, quienes escribieron Emacs y los modos de edición de líneas al estilo vi. código, respectivamente. KornShell es compatible con versiones anteriores del shell Bourne e incluye muchas funciones del shell C, inspiradas en las solicitudes de los usuarios de Bell Labs.

Características

KornShell cumple con POSIX.2, Shell and Utilities, intérprete de comandos (IEEE Std 1003.2-1992). Las principales diferencias entre KornShell y el shell Bourne tradicional incluyen:

Historia

Korn Shell corriendo en Windows Services para UNIX

KornShell era originalmente un software propietario. En 2000, el código fuente se publicó bajo una licencia particular de AT&T, pero desde el lanzamiento de ksh93q a principios de 2005, ha sido licenciado bajo la Licencia Pública de Eclipse. KornShell está disponible como parte de la colección de software de código abierto de AT&T Software Technology (AST). Como KornShell inicialmente solo estaba disponible a través de una licencia patentada de AT&T, se crearon varias alternativas gratuitas y de código abierto. Estos incluyen pdksh, mksh, bash y zsh.

La funcionalidad del KornShell original, ksh88, se utilizó como base para el intérprete de comandos estándar POSIX.2, Shell and Utilities (IEEE Std 1003.2-1992).

Algunos proveedores todavía envían sus propias versiones de la variante anterior ksh88, a veces con extensiones. ksh93 se mantiene en GitHub.

Como "KornShell de escritorio" (dtksh), ksh93 se distribuye como parte de Common Desktop Environment. Esta versión también proporciona asignaciones a nivel de shell para widgets de Motif. Fue pensado como un competidor de Tcl/Tk.

El KornShell original, ksh88, se convirtió en el shell predeterminado en AIX en la versión 4, con ksh93 disponible por separado.

UnixWare 7 incluye tanto ksh88 como ksh93. El shell de Korn predeterminado es ksh93, que se proporciona como /usr/bin/ksh, y la versión anterior está disponible como /usr/bin/ksh88. UnixWare también incluye dtksh cuando se instala CDE.

La distribución ksh93 sufrió un destino menos estable después de que los autores dejaran AT&T alrededor de 2012 con la versión estable ksh93u+. Los autores principales continuaron trabajando en una rama beta de ksh93v- hasta alrededor de 2014. Eventualmente, Red Hat asumió ese trabajo principalmente en 2017 (debido a las solicitudes de los clientes) y resultó en el lanzamiento inicial final de ksh2020 en el otoño de 2019. Ese lanzamiento inicial (aunque solucionó varios problemas de estabilidad anteriores) introdujo algunos problemas menores de rotura y compatibilidad. En marzo de 2020, AT&T decidió revertir los cambios de la comunidad, ocultarlos en una sucursal y reiniciar desde ksh93u+, ya que los cambios eran demasiado amplios y demasiado centrados en ksh para que la empresa los absorbiera. un proyecto en modo mantenimiento. El desarrollo de corrección de errores continúa en la rama ksh93u+m, según la última versión estable de AT&T (ksh93u+ 2012-08-01). ksh2020 se lanzó como "lanzamiento principal por varias razones" como la eliminación de la compatibilidad con EBCDIC, la eliminación de la compatibilidad con complementos binarios escritos para ksh93u+ y la eliminación de algunas funciones matemáticas rotas, fue lanzado por AT&T, pero nunca ha sido mantenido o respaldado por ellos (ni siquiera en su fecha de lanzamiento inicial).

Principales contribuciones a la rama principal de software

Para los propósitos de las listas a continuación, la rama de software principal de KSH se define como el programa original, que data de julio de 1983, hasta el lanzamiento de KSH2020 a fines de 2019. El desarrollo continuo de versiones de seguimiento (ramas) de KSH se ha dividido en diferentes grupos a partir de 2020 y no se detalla a continuación.

Contribuyentes individuales primarias

(feminine)

Los siguientes se enumeran en un orden cronológico aproximadamente ascendente de sus contribuciones:

Consultora de integración

(feminine)

Principales contribuyentes corporativos

Los siguientes se enumeran en un orden cronológico aproximadamente ascendente de sus contribuciones:

Recursos corporativos donados

Además de las principales corporaciones contribuyentes principales (enumeradas anteriormente), algunas empresas han contribuido con recursos gratuitos para el desarrollo de KSH. Estos se enumeran a continuación (ordenados alfabéticamente):

Variantes

Hay varias bifurcaciones y clones de KornShell: