Konsole Terminal open on the Kubuntu Focus Ir14 Linux laptop.
Agence web » Actualités du digital » Comment démarrer avec l'édition de ligne de commande Linux

Comment démarrer avec l'édition de ligne de commande Linux

Résumé

  • Les coquilles modernes prennent en charge l'édition de ligne de commande pour un rappel et une correction efficaces des commandes.

  • L'édition de ligne de commande est plus efficace que l'utilisation du mécanisme d'historique du shell.

  • Des coquilles comme Kornhell, Bash, Zsh et Fish offrent une modification en ligne de commande; Une modification de style EMACS est recommandée.

Avez-vous utilisé le terminal Linux et souhaité qu'il y ait un moyen de revenir aux commandes précédentes sans tout repérer? Les coquilles modernes vous permettent de faire exactement cela avec l'édition de ligne de commande.

Qu'est-ce que l'édition de ligne de commande?

L'édition de ligne de commande est un moyen de rappeler et de corriger les commandes en utilisant des commandes d'édition de texte dans le shell. Ceci est similaire à l'utilisation de commandes dans un éditeur de texte. Étant donné que les éditeurs de texte sont couramment utilisés dans le terminal avec la coquille, de nombreux coquilles modernes fournissent des liaisons clés similaires à celles des principaux éditeurs de texte, EMACS et VI. Ceux-ci seront couverts plus tard dans cet article.

Vous pouvez vous déplacer autour de la ligne de commande ou rappeler les entrées précédentes comme vous vous déplacez dans un fichier texte dans un éditeur.

Pourquoi utiliser l'édition de ligne de commande?

La raison principale d'utiliser l'édition de ligne de commande est qu'elle est beaucoup plus efficace que d'utiliser le mécanisme de l'historique des coquilles. Bien que les commandes d'histoire de la coquille introduites avec le Shell BSD C soient les bienvenues lorsqu'elles ont été développées dans les années 1980, comme pour beaucoup de constructions de coquilles, ils peuvent être encombrants à retenir.

Lorsque Unix a été créé, l'histoire de la coquille était un parchemin de papier, car les terminaux d'origine étaient des téléprinteurs, également connus par le Téletype de marque. Le mécanisme d'histoire de la coquille inventée pour la coque BSD C a également été conçu pour ces terminaux, car ils étaient encore communs dans les années 1970 au milieu des années 1970. Les terminaux vidéo ultérieurs ont permis de modifier et d'effacer les caractères, et certains programmeurs avaient l'idée brillante que vous devriez être en mesure de passer par votre historique de commandement et de pouvoir le modifier à volonté.

En rapport

History of the Unix Terminal: Comment la vidéo a tué l'étoile de l'imprimante

Nous avons parcouru un long chemin de Teletypes.

Les commandes d'histoire de Shell sont symboliques et non intuitives. Les mécanismes d'édition en ligne de commande dépendent des clés que vous connaissez peut-être déjà, comme EMACS ou VI / VIM.

Vous pouvez également sauter plus facilement autour de la ligne de commande avec les capacités d'édition de ligne de commande que vous le pouvez habituellement.

Si vous voyez que vous avez fait une erreur plus tôt dans votre ligne de commande, vous pouvez sauter au début pour le réparer. Si vous essayez de vous souvenir d'une commande que vous avez exécutée, vous pouvez exécuter une recherche pour la trouver. Vous pouvez passer à une entrée précédente, puis la modifier.

Si vous souhaitez modifier une commande, vous pouvez simplement monter et modifier les commandes ou les noms de fichiers que vous souhaitez utiliser, puis exécuter la commande.

Pensez à utiliser l'édition de ligne de commande comme déplaçant l'historique de votre commande Shell comme s'il s'agissait d'un fichier texte.

Quels shells offrent une modification en ligne de commande?

De nombreux shells modernes disponibles sur les systèmes Linux prennent en charge l'édition de ligne de commande. La coquille qui a popularisé le concept était le Kornhell, à l'origine écrit dans les années 1980 à Bell Labs. Ce shell, du nom de son créateur David Korn, a offert aux utilisateurs la possibilité d'exécuter des commandes similaires à celles utilisées dans les éditeurs EMACS et VI. Ce modèle a été largement utilisé aujourd'hui sur d'autres obus.

Bash a également offert la modification de la ligne de commande depuis le départ, ainsi que Zsh. Avec Bash, le shell par défaut le plus courant sur les distributions Linux, la plupart des distributions Linux l'offrent hors de la boîte. D'autres coquilles, comme le poisson, l'offrent également. TCSH, qui est inspiré par la coquille C, propose également des fonctionnalités VI et EMACS. Cela signifie que l'apprentissage des techniques d'édition en ligne de commande sera payant quel que soit le shell que vous utilisez.

Le choix du mode d'éditeur à utiliser est généralement défini dans une variable d'environnement ou la commande de configuration du shell.

Édition de style Emacs

Le moyen le plus simple de commencer avec l'édition de ligne de commande est d'utiliser le mode EMACS, même si vous utilisez un autre éditeur. Il s'agit également du style par défaut sur la plupart des coquilles. La raison en est que cela semble plus un mode naturel, car Emacs ne fait pas la distinction entre les modes de commande et d'insertion comme le font VI et VIM. Même si mon éditeur préféré est VIM, je pense simplement que son ensemble de commandes est mieux adapté à l'édition dans ce programme, et il ne fonctionne pas aussi bien dans le shell. Je vais démontrer l'édition en ligne de commande dans Zsh, qui est mon coquille de choix, mais ils devraient également travailler dans d'autres obus comme Bash.

Pour configurer l'édition de style EMACS, vous utiliserez l'une des deux commandes, selon le shell que vous avez.

En bash, Type:

         set -o emacs
    

Ou en zsh:

        bindkey -e
    

Sur la plupart des obus modernes, l'édition de style EMACS est de toute façon la valeur par défaut.

Les premières commandes que vous devez maîtriser se déplacent d'avant en arrière à travers l'historique de votre coquille. Vous pouvez utiliser les touches de flèche haut et bas. Vous pouvez également utiliser les Ctrl + P et Ctrl + N pour avancer et revenir dans votre historique. Vous vous en souvenez mnemoniquement car « p » représente « Précédent » et « n » représente « Suivant ».

Utilisez des lettres minuscules, car les caractères majuscules sont significatifs dans la coquille et partout ailleurs dans Linux.

Vous pouvez également utiliser les touches de flèche pour avancer et revenir sur la ligne de commande. Ctrl + F et Ctrl + B avancent et vers l'arrière. Encore une fois, vous vous en souvenez avec les mnémoniques « en avant » pour « F » et « Backward » pour « B ». Il est préférable de les essayer plusieurs fois pour développer la mémoire musculaire, en particulier pour les choses que vous faites fréquemment. L'utilisation des touches de flèche ou des combinaisons de lettres Ctrl + est une question de goût et de confort.

Vous pouvez faire des allers-retours dans votre histoire, mais ce qui est utile, c'est de pouvoir rechercher. Pour rechercher en arrière dans votre histoire, appuyez sur Ctrl + R. Ensuite, vous pouvez commencer à taper ce que vous voulez rechercher, et les résultats apparaîtront en temps réel qui contiennent la chaîne de recherche. La chaîne de recherche sera mise en évidence. Appuyez sur Ctrl + R pour répéter la recherche arrière. La recherche avant est Ctrl + F et elle fonctionne de la même manière. Lorsque vous arrivez à une commande précédente, vous pouvez soit appuyer sur Entrée pour l'exécuter à nouveau, soit le modifier. Vous voudrez peut-être le faire si vous souhaitez utiliser une commande ou un nom de fichier différent.

Vous pouvez supprimer les caractères précédents à l'aide de la touche arrière, mais vous pouvez également supprimer le suivant en appuyant sur Ctrl + D. Pour supprimer un mot, appuyez sur Meta + d. Pour supprimer une ligne entière, appuyez sur Ctrk + K.

Un mouvement que j'utilise beaucoup est de sauter au début et à la fin d'une ligne. Pour aller au début d'une ligne, appuyez sur Ctrl + a. Pour aller à la fin, appuyez sur Ctrl + E. Ces commandes sont pratiques quand je me rends compte que je veux changer quelque chose dans la ligne sur laquelle je travaille, mais le curseur est plus proche d'une extrémité de la ligne.

Vous pouvez également vous déplacer par des limites de mots au lieu de simplement par des mouvements individuels du curseur. Vous pouvez utiliser la clé Meta, qui est soit la clé ALT ou la touche d'échappement. La clé Meta modifie les commandes précédentes. Par exemple, pour avancer par un mot, appuyez sur Meta + F, et pour revenir en arrière, appuyez sur Meta + B.

Édition VI Style

Vous pouvez utiliser des clés de style VI-style dans des shells qui prennent en charge l'édition de ligne de commande, mais même si je suis un utilisateur VIM, je suggère de considérer les commandes EMACS. La raison principale est que, contrairement à Vim, il n'y a aucun indicateur visuel qui montre si vous êtes en mode insert ou commande. Je trouve que les commandes de style vi-ne fonctionnent pas aussi bien dans la coquille. EMACS semble mieux adapté à l'édition en ligne de commande, et l'utilisation des commandes de style EMACS comme par défaut semble justifiée.

En rapport

11 conseils VIM qui vous feront gagner des heures de montage

Soyez un VIM Pro.

Pourtant, si vous souhaitez utiliser les commandes de style VI-STYLE, vous pouvez les configurer de deux manières:

        
set -o vi
bindkey -v

En mode VI, vous commencerez en « mode insérer », où vous tapez les commandes shell. Pour sortir en mode commande, où vous vous déplacez, appuyez sur Escape. Pour reculer, appuyez sur h. Pour aller de l'avant, appuyez sur l. Pour monter dans les entrées d'historique précédentes, appuyez sur h. Pour descendre, appuyez sur j.

Vous pouvez avancer par des mots avec la touche W et revenir avec la touche E en mode d'entrée.

Vous pouvez rechercher en arrière avec le? Clé en mode commande et recherche avant à l'aide de la touche, similaire aux commandes de recherche vers l'avant et vers l'arrière.

Pour supprimer le texte en mode commande, positionnez le curseur dessus et appuyez sur la touche D. Pour supprimer un mot, appuyez sur DW. Pour supprimer une ligne entière, utilisez « DD » en appuyant deux fois sur la touche D.


Ces commandes ne sont qu'un échantillonnage de ce qui est disponible pour l'édition de ligne de commande dans les shells Linux modernes. Avec suffisamment de pratique et de formation sur les doigts, vous pourrez parcourir l'historique de votre commandement et redémarrer et modifier les commandes à volonté. Vous accélérerez considérablement votre utilisation du terminal Linux.

★★★★★