LinuxAlternative

Linux · Programación

Ksh

KornShell (ksh) es una shell Unix que combina características de sh, csh y awk para scripting y uso interactivo.

Código abiertoGratis
Sé el primero en valorar
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

Ubuntu / Mintsudo apt install ksh93u+m
Debiansudo apt install ksh93u+m
Fedorasudo dnf install ksh
Arch / Manjarosudo pacman -S ksh
openSUSEsudo zypper install ksh

Consejos 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