Entonces, la pregunta prácticamente lo dice todo. Estoy en Snow Leopard y hago mucho desarrollo web, particularmente en Rails 3, que hace un uso intensivo de la consola.
He visto a algunos bloggers notables, etc., mencionar a Zsh como su preferencia sobre Bash, pero no sé qué diferencia haría.
¿Alguien podría darme una buena comparación de qué diferencia hay y qué podría hacer que uno prefiera una opción u otra?
Esto es de las preguntas frecuentes de Zsh :
2.5: Similitudes con bash El Bourne-Again Shell, bash, es otro shell mejorado tipo Bourne; lo mas obvio La diferencia con zsh es que no intenta emular el shell de Korn. Ya que ambos los shells están en desarrollo activo, probablemente no sea sensato ser demasiado específico aquí. En términos generales, bash ha prestado más atención al cumplimiento de estándares (es decir, POSIX) para más tiempo, y hasta ahora ha evitado las características interactivas más abstrusas (programables finalización, etc.) que tiene zsh.
Los he usado a ambos, pero ahora prefiero Bash porque las máquinas en las que trabajo por defecto usan Bash consistentemente. El comentario sobre el cumplimiento de los estándares es importante para mí porque significa coherencia entre los sistemas operativos.
Zsh tiene buenas habilidades de autocompletado, pero seguí encontrando casos en los que no sabía lo que quería. Eso fue hace varios años, por lo que podría haber mejorado desde entonces.
Descubrí que habilitar el "modo vi" ( set -o vi
) en Bash lo convierte en un entorno de línea de comandos mucho más agradable de lo que es normalmente, así que lo hago inmediatamente en mi .bashrc
archivo.
Cuando escribo scripts de shell, nunca programo ni en bash ni en zsh; programo usando sh ( /bin/sh
), porque es el mínimo común denominador y el que tiene menos probabilidades de tener problemas de compatibilidad. Eso es sólo un viejo hábito que me ha soportado bien.
locate */vi
. Usando zsh, el resultado para el mismo comando es zsh: no matches found: */vi
. Para que la búsqueda funcione en zsh, la consulta de búsqueda debe estar entre comillas como locate "*/vi"
.
Ghoppe
Coeur
Amar