Tuts terminaux

Prendre le ZSH de l'utilisateur expérimenté en ligne de commande pour un tour - pas de jeu shell ici

Prendre le ZSH de l'utilisateur expérimenté en ligne de commande pour un tour - pas de jeu shell ici

Il y a de fortes chances que, en tant qu'utilisateur Linux, lorsque vous entrez une commande dans la CLI, vous utilisez le shell bash.  Alors que bash, abréviation de Bourne-again shell, est le shell par défaut pour la plupart des distributions Linux, ce n'est pas le seul "jeu" shell en ville. Il y en a beaucoup plus.

Sous Linux ou Unix, le shell n'est que l'interpréteur de commandes du système d'exploitation qui permet à l'utilisateur d'exécuter d'autres programmes.

Certains shells Linux standard incluent :

Dans l'article d'aujourd'hui, nous examinerons en profondeur le shell zsh, car il devient de plus en plus populaire auprès de la communauté *Nix.  Plus tôt cette année, Apple a annoncé qu'à partir de macOS 10.15 Catalina, zsh devrait servir de shell par défaut du système d'exploitation, remplaçant bash, utilisé par Apple depuis le macOS X 10.3 Panther, sortie pour la première fois en octobre 2003.

Notre distribution Linux pour notre exploration zsh est Ubuntu 19.dix.  Comme le bash zsh n'est pas installé par défaut sur Ubuntu, installons-le.

# sudo apt installer zsh

installation du shell zsh

Jetons un coup d'œil rapide à ce que le shell zsh.

#zsh

Écran initial lors de l'exécution de zsh

Exécuter le zsh La commande invoque pour la première fois la fonction de configuration du shell Z et nous propose plusieurs options :

Si nous tapons q, rien ne change, et la prochaine fois que nous tapons zsh, le même écran devrait nous accueillir.

Dactylographie 0 crée un .zshrc fichier dans notre répertoire personnel (~/).  Cependant, ce fichier ne contient qu'un fichier de commentaires dans le fichier et n'exécute aucune commande.

Si nous tapons 1, nous avons présenté le menu principal, qui nous permet de remplir notre ~/.zshrc dossier basé sur les réponses que nous fournissons.

zsh Menu principal

Enfin, si on tape 2, notre ~/.zshrc le fichier est rempli avec les paramètres par défaut.

presse 2. Ne t'inquiète pas; nous reviendrons sur le shell bash à la fin de cet article).

Le menu principal de zhs crée et remplit le ~/.fichier zshrc

Lorsque vous revenez à l'invite, vous remarquerez que votre invite CLI est différente.  C'est parce que votre shell n'est plus le shell bash, vous utilisez maintenant le shell zsh (dans le shell bash).

Assurons-nous.

# écho $0

Vous pouvez également revenir au shell bash avec le sortir commander.

# sortir

Quittez le shell zsh depuis bash

Le fichier cette option 2 créé pour nous est le ~/.zshrc fichier et peut être modifié par vous à tout moment.

Un générique, peuplé ~/.fichier zshrc

Vous remarquerez que si vous regardez les fichiers cachés dans votre répertoire personnel, vous savez, ayez un ~/.zschrc fichier avec votre ~/.bashrc déposer.  Chaque coquille a son propre "rc" déposer.  le "rc" est simplement le fichier de configuration de votre shell.  Utilisations courantes pour "rc" les fichiers incluent la définition de variables d'environnement personnalisées et la définition d'un alias pour les commandes couramment utilisées.

Par example:

export_EDITOR=gedit

ou alors

alias update="sudo apt-get update && sudo apt-get upgrade"

Notez, cependant, bien que nous ayons installé le shell zsh sur notre système, ce n'est pas notre shell par défaut.  Le shell bash est toujours le shell par défaut.  Nous pouvons facilement changer le shell par défaut en zsh.

Cependant, voyons d'abord quelles sont les options du shell en examinant /etc/shell.

# chat /etc/coquilles

Maintenant que nous voyons que zsh est là et que nous connaissons le répertoire, définissons notre shell par défaut sur zsh.

# chsh -s /bin/zsh

Notez que l'invite n'a pas changé cette fois.  C'est parce que le changement ne prendra effet qu'après avoir redémarré le système.

Définissez votre shell par défaut avec le chsh

Tout aussi rapidement, nous pouvons le remplacer par le shell bash.

# chsh -s /bin/bash

Comme auparavant, cependant, nous devons redémarrer avant que notre changement ne prenne effet.

Alors, super, vous savez maintenant qu'il existe d'autres shells à votre disposition, ainsi que comment les installer et les implémenter sur votre système.  Mais que vous offre le shell zsh que le shell bash ne propose pas?

Bien que les fonctionnalités proposées par ZSH soient beaucoup trop nombreuses pour être énumérées ici, examinons quelques-unes des principales.

Modification de l'achèvement de l'onglet Répertoire

Lorsque vous utilisez le répertoire de changement (CD ) dans bash, vous êtes invité avec une liste de fichiers dans le répertoire actuel.

# cd 

Une liste de dossiers présentés à la suite de la CD  la commande n'est pas particulièrement utile.  Le shell zsh le reconnaît et vous fournit une liste des seuls répertoires valides.

Commande de liste abrégée

Lors de la navigation manuelle dans les répertoires de la CLI, devoir se souvenir d'une chaîne de texte telle que /accueil/mtravisrose/Bureau peut être intimidant.  Heureusement, avec zsh, vous n'avez pas besoin de vous souvenir du nom du répertoire entier, juste les premières lettres (assez pour le rendre unique), dans ce cas,

# cd /h/m/De

et zsh comprendra le reste.

Dactylographie cd /h/m/De corrige automatiquement à cd /home/mtravisrose/Bureau

Tabulation complétion avec le tuer Commander

Alors que la plupart des utilisateurs de bash ne tuent les processus en cours d'exécution qu'après les avoir inspectés à l'aide du ps commande (ou le tuer commande pour ceux qui vivent dangereusement), zsh permet de taper le tuer commande avec la première lettre ou le processus que vous voulez tuer. appuie sur le et vous présente une liste de commandes de clavier navigable qui commence par la ou les lettres que vous avez tapées après le tuer commander.

Les autres fonctionnalités intéressantes de zsh incluent l'historique des commandes partagé, l'extension des variables d'environnement, la prise en charge intégrée de la globalisation, le répertoire de changement automatique, la correction orthographique et la correction automatique des commandes.  Regardez, il est impossible de lister, démontrez la pléthore de fonctionnalités attrayantes que zsh ajoute à votre CLI.  De nombreuses fonctionnalités méritent un article à part entière. Mais peut-être que la fonctionnalité la plus impressionnante et incontestablement la plus appréciée du shell zsh est sa prise en charge des plugins et des thèmes.

Un plugin zsh n'est qu'un framework pour gérer votre configuration zsh, tandis que le thème n'est que l'esthétique.

De loin, le framework de plugin le plus populaire pour zsh est Oh-My-Zsh. Oh-My-Zsh est également livré avec plus de 250 plugins intégrés et 125 thèmes.

Le plugin Oh-My-Zsh

En ce qui concerne les thèmes zsh, powerlevel9k est de loin le plus populaire et obtient beaucoup de copies et de mentions sur Internet.  Comme le titre d'un article le déclare, « Le shell Linux le plus cool JAMAIS!".

Le thème powerlevel9k zsh en action

Qu'il s'agisse de nouveaux utilisateurs de Linux ou d'un professionnel chevronné, nous vous encourageons à installer le shell zsh et à l'exécuter à son rythme.  Faites-nous part de vos réflexions et expériences.  La page de manuel zsh est une excellente ressource pour en savoir plus sur le shell zsh, y compris des sujets tels que les fichiers de démarrage, la génération de noms de fichiers, la surveillance des connexions/déconnexions et des index tels que l'index des clés, l'index des concepts et l'index des fonctions.

# homme zsh

La page de manuel zsh

Si vous aimez le shell zsh et que vous souhaitez que nous écrivions d'autres articles liés à zsh, tels qu'un aperçu de Oh-My-Zsh et du thème powerlevel9k, faites-le nous savoir, et nous vous obligerons.

Nous avons hâte d'avoir de tes nouvelles.

Comment utiliser AutoKey pour automatiser les jeux Linux
AutoKey est un utilitaire d'automatisation de bureau pour Linux et X11, programmé en Python 3, GTK et Qt. En utilisant ses fonctionnalités de script e...
Comment afficher le compteur FPS dans les jeux Linux
Les jeux Linux ont reçu une impulsion majeure lorsque Valve a annoncé la prise en charge de Linux pour le client Steam et leurs jeux en 2012. Depuis l...
Comment télécharger et jouer à Civilization VI de Sid Meier sur Linux
Présentation du jeu Civilization 6 est une version moderne du concept classique introduit dans la série de jeux Age of Empires. L'idée était assez sim...