Por defecto, cuando hablamos de un shell en Linux, la mayoría de la gente piensa en Bash. Es cierto que es la más extendida y podría decirse que es una de las conchas más simples para empezar, pero también hay muchas otras conchas que anhelan su atención. Hoy pasaremos por otra concha muy famosa: la concha de Korn («ksh» para los íntimos).
Historial
En su origen, la concha de Korn era considerada la alternativa comercial a la concha de Bash. Desarrollado en 1983 por David G. Korn para AT&T Bell, el Korn Shell se inspiró en la interactividad del Shell C y la eficacia del Bourne Shell. Fue actualizado en 1986, luego en 1988, y finalmente fue lanzado en 1993. Sin embargo, antes de eso, como el Korn Shell era un producto comercial, en 1987 se creó una alternativa gratuita, llamada Korn Shell de Dominio Público. Este pdksh que todavía se puede utilizar hoy en día se basa principalmente en el ksh de 1998 y 1993. Desde la perspectiva actual, Bash y Korn son bastante similares y compatibles. De hecho, ambos descienden del mismo antepasado. Sin embargo, la interacción es ligeramente diferente y algunas de las técnicas de scripting deben ser revisadas cuando se pasa de una a otra.
Instalación
Ahora que sabes más sobre ksh, vamos a instalarlo. Para Ubuntu, la instalación es bastante simple:
sudo apt-get install ksh
Si está usando otra distribución, puede comprobar sus repositorios. En el peor de los casos, descargue el paquete desde la página oficial de descargas de AT&T .
Una vez instalado el paquete, puede iniciar un Korn Shell desde cualquier terminal a través del comando:
ksh
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Si realmente le gusta esta shell y quiere que reemplace a la actual, puede hacerlo escribiendo
sudo usermod -s /bin/ksh[nombre de usuario]
Uso
Como dije antes, el Korn Shell está cerca del Bash Shell. Pero antes de intentar nada, tienes que saber que ksh puede imitar el comportamiento de tu editor de texto favorito. Eso es lo primero que te hará querer u odiar a Korn. Para ser más claro, puede configurar su shell para que tenga los mismos accesos directos y funciones que un editor de texto no gráfico de su elección. Para ver una lista de los editores disponibles en su sistema, use este comando de ksh:
set -o
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>.
Por mi parte, prefiero usar a Vi. Por lo tanto, lo hice
set -o vi
A partir de ese punto, ksh se comportará de la misma manera que vi. Y por supuesto, para aquellos de ustedes que saben todo sobre Emacs, hagan lo siguiente
set -o emacs
Por el bien de este artículo, continuemos con Vi. Ahora tiene acceso a todos los accesos directos y comandos que utiliza normalmente con Vi. No olvide utilizar la clásica tecla «Esc». Por ejemplo,
- Puede borrar una línea con «dd»
- Saltar a la siguiente palabra con «e»
- Pegar con «p»
- Borrar un carácter con «x»
- Etc
Vamos a la parte interesante, la autocompletación y la ayuda interactiva.
Con Bash, puede completar automáticamente un comando pulsando dos veces el tabulador. Esto no funcionará en todas las situaciones con ksh. En cambio, si configuras Vi, puedes hacer «Esc + «. Si tiene Emacs