it-swarm-es.com

Comparación de conchas de UNIX

De las principales conchas de UNIX (bash, ksh, tcsh, zsh, otros), ¿hay razones convincentes para usar uno sobre otro?

  • ¿Cuál es el más interactivo/de la línea de comandos?
  • ¿Cuál es el más propicio/intuitivo para escribir scripts?
  • ¿Hay alguna característica importante incorporada que una cáscara le ofrece a los demás no?
  • ¿Hay alguna de estas conchas realmente buenas para un tipo de función, pero no a otra? ¿O son bastante bien redondeados/flexibles?
  • ¿Es solo una cuestión de preferencia personal?

Puedo hacer que este wiki de la comunidad si alguien prefiera.

9
Andy White

Actual:

  • bash - Bourne nuevamente Shell, Shell predeterminado en la mayoría de las distribuciones de Linux. Características decentes;
  • zsh: la mayoría de las características ricas, pero aún rara vez se usan;
  • ksh: Shell predeterminado en Solaris, AIX y otras pocas otras Unes;
  • tcsh - Shell predeterminado en varios * BSD Sabor Aredes;

Histórico:

  • sh - Original Bourne Shell (lanzado 1977). Obsoletido por bash;
  • csh - Original C Shell (lanzado 1978). Obsoletido por TCSH y KSH;

Nota, que Bash, KSH y ZSH se derivan de SH Syntax, mientras que TCSH se deriva de la sintaxis de CSH. Esta son dos sintaxis bastante diferentes.

El gráfico de características (wiki).

17
vartec

FISH es un nuevo shell que quizás sea más interesante que los demás, no porque necesariamente tiene más características, sino porque solo funcionan por defecto y porque los peces se esfuerzan por la facilidad de uso.

Algunas capturas de pantalla ( 1 , 2 , , 4 ) son suficientes para dar la idea general.

el pescado es ahora el shell predeterminado en mi Mac en el trabajo. Imagínate.

9
Peter Hilton

Si va a aprender una concha que no sea sh/bash, es posible, podría simplemente ir con zsh. No creo que nadie concuerde seriamente que sea el más poderoso y lleno de características de las conchas alternativas; Ya sea que sea simplemente Bloat, por supuesto, todavía está en proceso de debate.

He escuchado cosas buenas sobre fish, pero nunca trabajó el esfuerzo para molestarse con ellos.

Los administradores que conozco consideren csh y tcsh para ser abominaciones que deben evitarse a todos los costos, y estoy de acuerdo con ellos a pesar de que nunca se ha visto obligados a ponerme a través de la cáscara.

2
kquinn

Recomendaría conocer bien a Bash, ya que es uno de los más comunes (generalmente el valor predeterminado de Linux). Personalmente, me encanta Zsh como mi concha interactiva. Tiene grandes características de finalización. Por ejemplo, puede configurar una lista de hosts y cuando realice algo como SSH Ser [Tab], sabrá que intentará la pestaña Auto Completa uno de esos hosts. También tiene un globo recursivo, por lo que si desea encontrar todos los archivos JPEG en el actual y el subdirectorio, puede usar ls -ld **/*.jpg. Hay muchas características divertidas con ZSH (Buscar archivos .zshrc de la gente), y puede configurarlo en 'bash compatible', por lo que es fácil cambiar entre los dos. Si combina esto con GNU, es posible que la línea de comandos se convierte en un placer para trabajar.

2
Kyle Brandt

No olvide su otra pregunta : la más común shell Unix/Linux : la cáscara más popular es probablemente la más popular por una razón ;-)

Por lo que vale la pena, la mayoría de las personas no apagan entre las conchas con frecuencia, por lo que será difícil obtener una comparación bien redondeada de las distintas opciones; Es más probable que vea a diferentes personas que defienden las virtudes de sus conchas favoritas. Desde lo poco que he escuchado sobre diferentes conchas, todos ofrecen algunas de las mismas características básicas (como la redirección de E/S, el historial de comandos, etc.), por lo que es probable que la preferencia personal sea un componente grande.

1
David Z

Sin embargo, la preferencia por el uso diario es realmente un mather de gusto personal, sin embargo, al escribir scripts, trato de ser compatible con POSIX para las constabilidades sake.

0
Vincent De Baere

Al igual que las cabezas hacia arriba: Ubuntu predeterminada "SH" a "Dash", que conduce a algunos problemas en el pasado con la compuerz de POSIX. Aparentemente, los comandos de eco difieren ligeramente.

0
lImbus