184 votes

Valeur de commutation de zsh pour un usage occasionnel?

Le shell par défaut dans Mac OS X est bash, je suis heureux d'être de l'aide. Je viens de le prendre pour acquis. Il serait vraiment bien si il s'est auto-complété plus de choses, cependant, et j'ai entendu de bonnes choses à propos de zsh à cet égard. Mais je n'ai pas vraiment l'envie de passer des heures à configurer les réglages pour améliorer mon utilisation de lignes de commande par une petite quantité, car ma vie sur la ligne de commande n'est pas mauvais.

(Comme je le comprends, bash peut également être configuré pour auto-compléter de manière plus intelligente. C'est la configuration que je ne suis pas tout ce que vif.)

Changer pour un zsh, même dans un petit nombre de cas, pour rendre ma vie plus facile? Ou est-ce seulement une meilleure coque si vous mettez du temps à apprendre pourquoi c'est mieux? (Exemples serait gentil, trop :) )


@Rodney Amato et @Vulcain Désireux donner deux bonnes raisons de respectivement bâton bash et de passer en zsh. On dirait que je vais avoir à étudier à la fois! Oh bien - :)

Est-ce que quelqu'un avec une opinion à partir des deux côtés de l'argument?

83voto

Matt Points 2231

Personnellement, j'aime zsh.

Généralement, vous ne remarquerez probablement pas la différence entre elle et bash, jusqu'à ce que vous voulez rapidement faire des choses comme récursive d'expansion:

  • **/*.c par exemple.

Ou utiliser le suffixe des alias pour associer certains progs avec différents suffixes, de sorte que vous pouvez exécuter directement. Ci-dessous d'alias permet de "lancer" un fichier source C à l'invite de commandes en tapant simplement ./my_program.c – qui fonctionnera exactement comme si vous aviez tapé vim ./my_program.c. (Un peu l'équivalent du double-cliquant sur l'icône d'un fichier.)

  • alias -s c=vim

Ou imprimer les noms de fichiers modifiés aujourd'hui:

  • print *(e:age today now:)

Vous pouvez probablement le faire toutes ces choses en bash, mais mon expérience avec zsh, c'est que si il y a quelque chose que je veux faire, je peux probablement trouver dans zsh-amateurs. Je trouve aussi le livre 'De Bash à Z-Shellest vraiment utile.

Jouer avec l'esprit bogglingly grand nombre d'options est bien sympa aussi!

66voto

Rodney Amato Points 908

Pour un usage occasionnel, vous êtes probablement mieux coller avec bash et simplement l'installation de bash completion.

L'installation est assez facile, prenez la bash-completion-20060301.tar.gz à partir de http://www.caliban.org/bash/index.shtml#completion et l'extraire avec

tar -xzvf bash-completion-20060301.tar.gz

puis copiez le bash_completion/bash_completion fichier /etc avec

sudo cp bash_completion/bash_completion /etc

qui vous invite à entrer votre mot de passe. Vous n'aurez probablement envie de faire un /etc/bash_completion.d annuaire pour tout complément d'achèvement des scripts (par exemple, j'ai le git achèvement de script).

Une fois que c'est fait, la dernière étape est de s'assurer que l' .bash_profile fichier dans votre répertoire d'accueil de l'a

if [ -f /etc/bash_completion ]; then
     . /etc/bash_completion 
fi

en elle à la charge de l'achèvement de fichier lorsque vous vous connectez.

Pour tester il suffit d'ouvrir un nouveau terminal, et d'essayer de remplir sur cvs et il devrait vous montrer les cv des options dans la liste des complétions.

13voto

jkramer Points 7271

Si vous souhaitez utiliser ZSH est mieux à la fin, la configuration est assez facile. Placez ceci dans votre ~/.zshrc:

autoload -U zutil      # [1]
autoload -U compinit   # [2]
autoload -U complist   # [3]
compinit

Cependant, il vaut la peine de regarder toutes les autres grandes caractéristiques de la ZSH. L'exemple ci-dessus vous donnera une jolie plaine invite avec une bonne réalisation. Si vous ne voulez pas jouer avec les configurations, mais que vous voulez voir ce que ZSH peut faire pour vous, Google pour "zshrc" et vous obtiendrez des prêts à l'utilisation de configurations pour commencer.

6voto

Staale Points 8795

zsh est une console de configuration de l'interface chose. Vous pouvez le régler assez rapidement et facilement, sans avoir à jouer avec des fichiers de configuration. Je ne pense pas que vous aurez besoin de beaucoup de temps pour le configurer, probablement 10 secondes avec juste l'aide de valeurs par défaut, donc aller de l'avant et de l'essayer.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by: