La ligne de commande Linux est un outil que tout administrateur système devrait apprendre à connaître. Avec la puissance des commandes au bout de vos doigts, il y a très peu de choses que vous ne pouvez pas faire. Cependant, avec cette puissance vient la nécessité de se souvenir de ces commandes. Lorsque vous prenez en considération la complexité de ces commandes, il est compréhensible que certains administrateurs aient du mal à se souvenir de ce qu’ils ont fait ou doivent faire à l’invite Bash.

Vous pouvez avoir à émettre la commande :

iptables -A OUTPUT -o eth0 -p tcp -m multiport --sports 22,80,443 -m state --state ESTABLISHED -j ACCEPT

Ou, peut-être avez-vous récemment sécurisé un serveur, mais ne vous souvenez pas de l’adresse IP de mémoire.
Que faites-vous ? La plupart des administrateurs Linux vous diraient immédiatement de regarder dans votre historique Bash ; et ce serait un sage conseil. En tapant la commande history, on vous présente la dernière quantité X de commandes que vous avez exécutées sur le système. Le X est déterminé dans le fichier ~/.bashrc, dans la ligne:

HISTSIZE=1000

La commande history est, en fait, un excellent moyen de voir les commandes que vous avez lancées. Vous pouvez la passer au peigne fin, trouver la commande dont vous avez besoin, la copier, puis la recoller dans l’invite. Ou, vous pouvez, à l’invite de commande, simplement commencer à taper sur la flèche vers le haut de votre clavier jusqu’à ce que vous atterrissiez sur la commande dont vous avez besoin.

Et si je vous disais qu’il y a un moyen beaucoup, beaucoup, beaucoup plus facile ? Il y en a une, et elle s’appelle Fish. Fish est un shell convivial et interactif qui peut être installé sur votre machine Linux et qui présente des fonctionnalités :

  • Autosuggestions

  • Scriptibilité

  • Man page completions

  • Couleur VGA

  • Configuration basée sur le Web

  • .configuration basée sur le web

  • Facilité d’utilisation

Je vais vous guider à travers l’installation et l’utilisation du fish shell ; une fois que vous aurez commencé à utiliser cet outil pratique, il y a de fortes chances que vous ne retourniez plus jamais au vieux shell standard de Linux.

Installation

Fish peut être installé sur Ubuntu, Debian, Fedora, RHEL, openSUSE, CentOS, Arch Linux, Gentoo Linux, et même mac OS et Windows. Je vais démontrer l’installation sur Elementary OS, donc l’installation pour votre distribution variera (vous pouvez obtenir les instructions pour toutes les plateformes supportées sur la page principale de fish). L’installation pour Elementary OS (ainsi que pour la plupart des systèmes basés sur Debian) est la suivante :

  1. Ouvrir une fenêtre de terminal

  2. Ajouter le dépôt nécessaire avec la commande sudo apt-add-repository ppa :fish-shell/release-2

  3. Mettre à jour apt avec la commande sudo apt-get update

  4. Installer fish avec la commande sudo apt-get install fish

C’est tout ; fish est maintenant installé et prêt à servir.

Premières étapes

Vous êtes à l’invite Bash, avec fish installé, et vous n’avez aucune idée de comment l’utiliser. C’est parce que vous êtes toujours dans votre invite bash. Pour utiliser fish, vous devez entrer dans l’invite fish. Comment le faire ? Tapez la commande fish et vous verrez votre invite changer (Figure 1).

Figure 1 : Votre changement peut être spectaculaire ou subtil, selon la façon dont vous avez configuré votre invite Bash.

À ce stade, vous êtes prêt à commencer à utiliser fish. La meilleure façon de le faire est de commencer à taper une commande. Vous verrez que fish fait un excellent travail pour compléter la commande, en se basant sur votre historique. Par exemple, si je commence à taper ssh, fish complétera la commande avec l’entrée correspondante la plus récente de l’historique de bash (Figure 2).

Figure 2 : Fish fait un excellent usage de l’historique de Bash.

Si c’est la commande que vous recherchez, appuyez sur la touche fléchée droite pour accepter et ensuite appuyez sur Entrée. La seule mise en garde de fish est que, une fois qu’il fait une suggestion, vous ne pouvez pas faire défiler l’historique des commandes similaires (ce qui serait une fonctionnalité intéressante).

Une chose vraiment cool que vous pouvez faire avec fish est d’obtenir des suggestions de commandes, en fonction de ce que vous tapez. Disons, par exemple, qu’il y a un outil ssh que vous voulez utiliser, mais vous ne vous souvenez pas du nom de la commande (mais vous savez qu’elle commence par « ssh »). Tapez ssh, puis appuyez sur la touche de tabulation. Fish vous présentera des suggestions, dont l’une pourrait être la commande que vous recherchez (Figure 3).

Figure 3 : suggestions de commandes de Fish.

Il y a tellement de choses que vous pouvez faire avec fish. Pour les apprendre toutes, votre meilleur pari est de parcourir le tutoriel officiel de fish (qui offre de nombreux exemples qui renforceront votre expérience de fish).

Une fois que vous avez terminé avec l’invite de fish, vous pouvez revenir à bash en tapant exit.

Configuration de fish

Une tâche que vous devriez certainement entreprendre est la configuration. Hors de la boîte, fish est un outil incroyablement puissant et pratique à utiliser. Cependant, fish offre de nombreuses personnalisations qui peuvent être ajustées avec l’outil de configuration basé sur le Web. Pour accéder à l’interface web, entrez dans le shell fish et tapez fish_config. Appuyez sur la touche Enter de votre clavier et votre navigateur par défaut s’ouvrira sur la page de configuration de fish (Figure 4).

Figure 4 : L’outil de configuration basé sur le web de fish.

Je recommande fortement de modifier votre invite fish afin que les différences entre celle-ci et l’invite standard ne soient pas si subtiles. Pour ce faire, cliquez sur l’onglet prompt, faites défiler vers le bas jusqu’à ce que vous trouviez un style qui vous convient, sélectionnez ce prompt, puis cliquez sur le bouton Set Prompt (Figure 5).

Figure 5 : Différencier votre prompt fish de votre prompt Bash.

Une fois que vous avez effectué les modifications, fermez la fenêtre (ou l’onglet) du navigateur, revenez à votre fenêtre de terminal et appuyez sur Entrée. La nouvelle configuration de l’invite sera définie et vous êtes prêt à partir.

Il y a pas mal d’autres options à configurer dans l’outil web. De là, vous pouvez également configurer des abréviations (alias) pour les commandes. Cela peut également être fait à partir de l’invite du poisson, mais l’utilisation de l’interface web rend les choses un peu plus faciles. Disons que vous vous connectez régulièrement à un serveur particulier avec la commande:

ssh -v [email protected]

Avec des abréviations, vous pouvez raccourcir cette commande en disant ssho. Avec cela en place, il vous suffirait de taper ssho (dans le shell fish), d’appuyer sur entrée, et la commande complète s’exécutera. Pour créer une abréviation, exécutez la commande fish_config (à partir de l’invite fish), allez dans l’onglet abréviations de l’outil Web, puis tapez votre abréviation dans la zone de texte de gauche et la commande complète dans la zone de texte de droite (Figure 6). Appuyez sur le bouton Enregistrer et votre abréviation est prête.

Figure 6 : Ajout d’une abréviation de commande pour une efficacité encore plus grande du poisson.

Assurez-vous de fermer la fenêtre (ou l’onglet) du navigateur, puis appuyez sur Entrée (sur votre clavier) de nouveau à l’invite du poisson.

Continuez à apprendre

Pour tirer le meilleur parti de fish, il serait bon que vous lisiez la documentation officielle de fish (tapez simplement help à l’invite de fish et appuyez sur Entrée). Vous serez agréablement surpris de tout ce que cet interpréteur de commandes peut faire pour vous.

Notez bien que l’invite fish deviendra très rapidement un outil indispensable pour vous aider dans vos tâches d’administration quotidiennes de Linux.

Apprenez-en plus sur Linux grâce au cours gratuit « Introduction à Linux » de la Fondation Linux et d’edX.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.