¿Cuál de estos 5 shells de Linux es el mejor?

Feliz usando el shell bash en Linux? ¿O preferirías probar una alternativa? Hay tsch, fish, KornShell y Z Shell para elegir. Pero, ¿cuál de estos shells de Linux es el mejor?

Feliz usando el shell bash en Linux?  ¿O preferirías probar una alternativa?  Hay tsch, fish, KornShell y Z Shell para elegir.  Pero, ¿cuál de estos shells de Linux es el mejor?
Anuncio

Feliz usando el shell bash en Linux? ¿O preferirías probar una alternativa? Hay tsch, fish, KornShell y Z Shell para elegir. Pero, ¿cuál de estos shells de Linux es el mejor?

¿Qué es un Shell?

Usualmente, cuando escribes una aplicación, se hace en un lenguaje de alto nivel que los humanos pueden entender. Ejemplos de estos son C #, Java, C ++, etc. Créalo o no, su computadora ve todo como 1s como 0s o, como comúnmente se conoce, código binario o de máquina ¿Qué es Binario? [Tecnología explicada] ¿Qué es binario? [Explicación de la tecnología] Dado que el binario es tan absolutamente fundamental para la existencia de las computadoras, parece extraño que nunca antes hayamos abordado el tema, así que hoy pensé en dar una breve descripción de lo binario ... Leer Más .

Un compilador traducirá el lenguaje de alto nivel en un archivo binario como un ejecutable. Este archivo binario es lo que ejecuta para ejecutar dicha aplicación. Ahora, esta es una vista de alto nivel de lo que sucede, pero solo recuerde, su computadora necesita una capa de traducción entre lo que le está diciendo que haga y cómo puede entender eso.

Un shell es lo que se conoce como un intérprete. De forma similar a un compilador, un intérprete traduce el código humano en código máquina. Una de las diferencias es que un intérprete hace esta afirmación a la vez en lugar de un compilador que escanea todo el programa y lo traduce como un todo en código máquina.

El shell, entonces, es una interfaz para que pueda interactuar con su sistema operativo (SO). A medida que ingresas comandos en tu caparazón, el caparazón es responsable de interpretar esos comandos y hacer que la magia suceda. Operaciones como copiar archivos, canalizar, enumerar archivos están dentro de los límites de un shell. También es responsable de recordar su historial de comando para verificar qué pasó por su cabeza en un momento de posible embriaguez.

Para descubrir todos los shells que están disponibles en su sistema, abra el terminal y escriba:

cat /etc/shells 

Para saber qué shell estás usando actualmente, escribe:

 echo $0 

mejores conchas de Linux descubren qué shell usando

1. Bash

Por una milla, el shell más popular entre los usuarios de Linux. Incluso es difícil pensar en proyectiles sin Bourne-Again SHell (bash) como parte de la ecuación. Muchas distribuciones de Linux se envían con bash como el shell predeterminado porque bash es el shell de GNU predeterminado. Lanzado en 1989, también cuenta con algunas décadas de desarrollo saludable detrás de él.

El predecesor de Bash es The Bourne Shell (sh), que es uno de los shells originales de Unix. Una característica atractiva para los programadores sh era que podían portar sus sh scripts. What Is Shell Scripting y por qué debería usarlo. ¿Qué es Shell Scripting y por qué debería usarlo? Además de ser capaz de aceptar y ejecutar comandos interactivamente, el shell también puede ejecutar comandos almacenados en un archivo. Esto se conoce como scripting de shell. Aquí cubrimos los conceptos básicos de las secuencias de comandos shell. Lea más directamente para bash completamente sin cambios. Bash también ofrece varias mejoras a su predecesor, como la finalización de comandos y el historial de comandos.

Bash es un shell perfectamente respetable y, a menudo, la documentación en línea supondrá invariablemente que lo está utilizando. Sin embargo, bash no está exento de fallas, como puede atestiguar cualquiera que alguna vez haya escrito un script bash que abarque algunas líneas. No es que no puedas hacer algo, es que no siempre es particularmente elegante leer y escribir. Bash probablemente esté aquí para quedarse por lo menos en el futuro cercano. Cuenta con una amplia base de instalación y brigadas de usuarios ocasionales y profesionales, que ya están acostumbrados a su uso y peculiaridades.

2. KornShell

Comúnmente conocido como ksh, KornShell es un shell alternativo que se originó en los Bell Labs en la década de 1980. Ksh comenzó su vida como software propietario, siendo el estándar de facto en los equipos comerciales y, por lo tanto, no estuvo disponible para Linux hasta el año 2000. No existen muchas diferencias entre bash y ksh, pero cada una tiene ventajas menores sobre la otra. Ksh, por ejemplo, tiene el nuevo comando cd old. Si estuviera en el directorio / Downloads / foo / bar / one / foobar y necesitara llegar a / Downloads / foo / bar / two / foobar, solo necesita ejecutar:

 cd one two 

mejores linux conchas korn shell
Los veteranos de ksh defenderán su superioridad al mencionar sus beneficios de scripting. Estos incluyen incluir una mejor sintaxis de bucle, formas más naturales de repetir comandos y las matrices asociativas apenas utilizadas. Para la entrada básica bash es bastante similar a ksh para scripting avanzado, sin embargo, esta será una experiencia diferente. Otra cosa a tener en cuenta es solicitar ayuda para ksh en línea. Esto puede implicar despertar a un usuario avanzado canoso de su letargo para que lo ayude. Relativo a bash, ¡que te dará una ráfaga de respuestas casi de inmediato!

Si quieres probar ksh, puedes escribir:

 sudo apt install ksh ksh 

3. Tcsh

Tcsh puede rastrear sus raíces hasta los primeros días de Unix. Es esencialmente el shell C (csh) con finalización de línea de comandos programable, edición de línea de comandos y algunas otras características. Tcsh es el shell por defecto para sistemas basados ​​en BSD como FreeBSD. El gran argumento de venta para tcsh es su lenguaje de scripting, que debería ser muy familiar para cualquiera que haya programado en C. Tcsh es un candidato digno para aprender si te encuentras principalmente programando C ¿Por qué la programación de C todavía vale la pena aprender? ¿Por qué es la programación de C? Todavía vale la pena aprender C no es un idioma muerto. De hecho, la revista IEEE Spectrum lo clasificó como el segundo idioma principal en 2017. Aquí hay cinco razones por las cuales. Lee mas . Esto hace que tcsh sea útil para crear prototipos de pequeños programas en C sin confundirse sobre qué corchetes está utilizando. Este problema tiende a suceder si cambia continuamente entre la programación en C y las secuencias de comandos del shell.

Los guiones de Tcsh son adorados por algunos y aborrecidos por otros. Pero también tiene otras características, como agregar argumentos a los alias y varios valores predeterminados que pueden ser atractivos para sus preferencias. Una de sus características más importantes es la forma en que se completa automáticamente con la finalización del historial. Después de sacar tu historial escribiendo el historial . Tcsh mostrará una lista numerada de sus comandos anteriores, con una marca de tiempo muy conveniente. Puede ejecutar cualquier comando escribiendo ! N reemplazando n con su número correspondiente en el historial mostrado. La finalización de la pestaña Historial en tcsh funciona escribiendo:

 !a 

Esto se expande al último comando que comenzó con la letra "a". Comparativamente, en bash, tendrías que escribir ! A: p para ver primero el comando, seguido por !! para ejecutarlo.

Para probar tcsh, escriba:

 sudo apt install tcsh tcsh 

4. Pescado

Entre toda la seriedad de Linux, el equipo de Fish ha incorporado un sentido del humor en su proyecto. En su sitio web, el título irónico dice: "Finalmente, un caparazón de línea de comandos para los años 90" - fish ("fiely nteractive sh ell") fue desarrollado en 2005. Más allá del promocionado "Glorious VGA Color", están algunas mejoras sobre otras conchas Los comandos que tienen una sintaxis no válida se mostrarán en rojo y la sintaxis correcta en azul. Además, hay abundantes juegos de complementos de pestañas, como las sugerencias de autocompletado codificadas por colores, que se basan en su historial.

mejores conchas linux pescado

mejores linux shelles auto

Fish también cuenta con la finalización de comandos basada en las páginas man de su máquina Cómo acortar las páginas man en explicaciones legibles en Linux y macOS Cómo acortar las páginas man en explicaciones legibles en Linux y MacOS MacOS y Linux tienen cada uno un comando útil, "man" que muestra explicaciones manuales para comandos de terminal. Como a menudo son largos, ¿por qué no utilizar la herramienta tldr para acortarlos en fragmentos legibles? Lee mas . Entonces, si acaba de instalar un programa nuevo y necesita acostumbrarse a su sintaxis, Fish obtendrá la sintaxis de la página man y la agregará a sus sugerencias de autocompletar. ¡Ordenado! Si desea familiarizarse con la línea de comando, el pescado puede ser un buen lugar para comenzar.

Para probar de qué se trata el pez, escriba:

 sudo apt install fish fish 

5. Z Shell

Muchos considerarían que está dejando el mejor caparazón para el final, lo que sería completamente comprensible. Zsh tiene similitudes con bash y ksh e incorpora muchas de las características que se encuentran en ellos, así como tcsh. Algunas características útiles de zsh incluyen una lista de autocompletado navegable. A diferencia de bash, que simplemente enumera todos los comandos disponibles y te permite escribirlo manualmente. Globbing en zsh es inexplicablemente útil. Mecanografía:

 vim /u/l/b/a 

Se abre automáticamente el archivo:

 /usr/local/bin/autoupdate.sh 

La corrección ortográfica en zsh es muy superior a la de bash. En un comando de cd bash puede corregir hasta un caracter. Zsh, por otro lado, se puede configurar para autocorregir 10 errores ortográficos en una palabra. Zsh también clava historiales de línea de comando. Esto es extremadamente útil para usuarios que pasan excesivas cantidades de tiempo en la terminal. Zsh mágicamente comparte historiales a través de las terminales, haciendo que las sesiones con múltiples terminales sean muy sencillas.

Zsh puede tardar un tiempo en configurarse en el primer uso si no va con la configuración predeterminada. Para intentarlo, ingrese:

 sudo apt install zsh zsh 

¿Qué Shell es para mí?

El hecho de que estas opciones estén disponibles es brillante. Son atisbos de la historia de la informática en sí misma, donde los programadores decidieron que querían hacer las cosas a su manera, y finalmente, liberarlos para el mundo.

Las diferencias sustanciales entre estos shells se pueden encontrar en la sintaxis de scripting. Cada caparazón tiene un conjunto particular de matices que los separan unos de otros. Tal como está, bash domina en términos de cuota de mercado, lo que hace que encontrar ayuda sea mucho más simple. Bash es simplemente el mejor todoterreno que satisface las necesidades de todos los usuarios, excepto de los más avanzados.

¿Qué shell usas actualmente? ¿Has probado alguna concha que no sea bash? ¿Qué es lo que amas u odias de tu caparazón actual? ¡Comparte tus pensamientos en los comentarios a continuación!

Crédito de la imagen: spaxiax / Depositphotos

In this article