it-swarm-es.tech

¿Qué Shell debo usar - tcsh vs bash?

He estado usando tcsh durante mucho tiempo. Pero cada vez que busco algo, a menudo encuentro que los métodos especificados son específicos de bash. Incluso la sintaxis para los scripts de Shell es diferente para los dos.

Por lo que he experimentado buscando y aprendiendo en Internet, bash parece ser el Shell más utilizado. Incluso el número de preguntas etiquetadas en este sitio bash es mucho más (cinco veces más actualmente) que el número de preguntas etiquetadas tcsh.

Entonces, me pregunto si debería cambiar a bash. ¿Qué piensas?

¿Por qué debería apegarme a tcsh OR por qué debería pasar a bash?

30
Lazer

Después de aprender bash, encuentro que tcsh es un poco un paso atrás. Por ejemplo, lo que podría hacer fácilmente en bash me resulta difícil hacerlo en tcsh. Mi pregunta sobre tcsh . El soporte y la documentación de Internet también son mucho mejores para bash y muy limitados para tcsh. La cantidad de libros de O'Reilly sobre bash es excelente, pero no he encontrado nada similar para tcsh.

23
Andrew Stern

En realidad, deberías pasar a zsh! Es esencialmente compatible con versiones anteriores y tiene toda la utilidad de bash con una gran ayuda de genialidad . Incluso hay un libro (aunque no he podido leerlo).

Admitiré na razón para no usar zsh sobre bash pero a menos que trabajes constantemente en múltiples instalaciones nuevas, realmente no se aplica. Especialmente si conoce los más significativos diferencias . Sin embargo, esto es realmente similar a las diferencias entre vim y vi; no quieres ser ingenuo pero prácticamente no es gran cosa. Incluso los usuarios hardcore vim pueden encontrar el camino emacs y viceversa.

25
gvkv

Debe cambiar a un Shell compatible con POSIX http://pubs.opengroup.org/onlinepubs/009695399/utilities/xcu_chap02.html , como uno de bash, ksh, dash, pero no zsh y ciertamente no tcsh. Ha pasado mucho tiempo desde que csh fue declarado una mala elección para los scripts: http://www.faqs.org/faqs/unix-faq/Shell/csh-whynot/ , tcsh no lo es tan diferente en esa área.

Al escribir scripts, asegúrese de usar construcciones POSIX solo (es decir, evite los bashismos y los me gusta) si no desea estar bloqueado nuevamente en algo no portátil.

19
jlliagre

La compatibilidad obsesionada está perdiendo el punto, creo. Si intentas hacer que todo sea compatible poniendo #!/bin/sh en la parte superior y usando . sh extensiones, pero nunca pruebe en nada que no sea bash, ¡no ha garantizado un script compatible! Es mejor usar #!/bin/bash y . bash para que los usuarios realmente conozcan el requisito real.

Si sabe zsh, tcsh, o algo mejor que bash, y tiene un buen manual de referencia para ello, no te detengas . Al igual que las personas esperan instalar Perl o python para poder ejecutar algunos scripts, ¡también pueden manejar la instalación de su oscuro Shell! :RE

7
Kevin Cantu

Cual caparazón? Elija el que tenga la mejor relación "facilidad de uso" frente a "problemas" ...

Si no puede encontrar suficientes ejemplos generales y explicaciones para su Shell "Maserati", entonces su rendimiento adicional puede ser más un problema que una bonificación ...

Encontré este artículo/sitio interesante; Puede valer la pena leerlo:
diferencias de Shell de UNIX y cómo cambiar su Shell

6
Peter.O

zsh probablemente tiene algunas similitudes más con tcsh que bash.

Ver: http://zsh.sourceforge.net/FAQ/zshfaq02.html#l1

La gente a menudo afirma que zsh puede hacer cosas que bash no puede, pero no he encontrado que ese sea el caso. Lo que he visto es que para zsh es más fácil, integrado o activado de forma predeterminada, mientras que en bash es un script adicional, debe ser encendido, o es más difícil.

(descargo de responsabilidad: soy un usuario bash que a veces ha considerado cambiar a zsh)

0
KellyClowers