Linux · Programación
Ksh
KornShell (ksh) es una shell Unix que combina características de sh, csh y awk para scripting y uso interactivo.
- Licencia
- GPL-3.0
- Última versión
- 1.0.10
¿Qué es Ksh?
KornShell, desarrollado por David Korn a principios de los años 80, fue diseñado para mejorar la Bourne shell añadiendo funciones como arreglos, aritmética incorporada y un lenguaje de comandos más potente. A lo largo de las décadas se ha convertido en un elemento básico en muchas distribuciones Unix y Linux, sobre todo donde la compatibilidad con scripts antiguos es importante.
ksh está dirigido a administradores de sistemas, desarrolladores y usuarios avanzados que necesitan un entorno de scripting fiable. A menudo se elige por su equilibrio entre la simplicidad de sh y las funciones avanzadas de csh, lo que lo convierte en un punto medio ideal para quienes quieren más que una shell básica pero menos que un lenguaje de programación completo.
En comparación con Windows PowerShell, ksh se siente más tradicional y ligero. No dispone del paradigma de canalización de objetos de PowerShell, pero su línea de comandos basada en texto y la sintaxis de los scripts son familiares para los usuarios de otras shells POSIX. La curva de aprendizaje es moderada, con muchos tutoriales disponibles para quienes migran desde scripts batch de Windows o PowerShell.
Ideal para: Scripting de shell a gran escala donde la compatibilidad con scripts Unix heredados es esencial.
Funciones clave de Ksh
- Lenguaje de shell compatible con POSIX
- Arreglos incorporados y arreglos asociativos
- Soporte para expresiones aritméticas
- Sustitución de comandos y globbing
- Edición interactiva con historial
- Portabilidad de scripts entre Unix/Linux
Ventajas
- Libre y de código abierto
- Amplia disponibilidad en las principales distribuciones
- Fuerte compatibilidad retroactiva con scripts sh
- Eficiente para trabajos por lotes de gran escala
Inconvenientes
- No tiene canalización de objetos nativa como PowerShell
- Integración limitada con GUI modernas
- Curva de aprendizaje para funciones avanzadas
Programas de Windows que sustituye Ksh
Cómo instalar Ksh en Linux
sudo apt install ksh93u+msudo apt install ksh93u+msudo dnf install kshsudo pacman -S kshsudo zypper install kshConsejos para usuarios de Windows
Al pasar de PowerShell, recuerda que ksh usa archivos de texto con extensión .sh o sin extensión; la sintaxis de los comandos difiere (por ejemplo, $() para sustitución de comandos, no $(…)). Los atajos como la autocompleción con Tab funcionan, pero los cmdlets al estilo PowerShell no existen. Los scripts que dependen de objetos de PowerShell deben reescribirse para usar flujos de texto o utilidades externas como awk o sed.
Ksh: preguntas frecuentes
¿Se sigue manteniendo ksh?
Sí, la última versión estable es ksh93, que recibe actualizaciones de seguridad ocasionales.
¿Puedo ejecutar scripts de PowerShell en ksh?
No. Los scripts de PowerShell (.ps1) no son compatibles; tendrás que reescribirlos con la sintaxis de ksh.
¿ksh admite arreglos?
Sí, ksh93 admite arreglos indexados y asociativos, que son útiles para estructuras de datos complejas.
¿Cómo activo el historial de comandos en ksh?
Añade set -o histexpand y usa el comando history; la mayoría de las distribuciones habilitan el historial por defecto.
Actualizado el