in

Comment copier et coller du texte sur le shell Bash de Linux

Fatmawati Achmad Zaenuri / Shutterstock.com

Vous voulez copier et coller sur la ligne de commande du shell Bash? Nous allons vous montrer plusieurs techniques que vous préfériez le clavier ou la souris. Celles-ci fonctionnent que vous soyez sur un bureau graphique ou sur un TTY textuel traditionnel.

Les raccourcis clavier habituels ne fonctionnent pas

La copie et le collage de texte font partie intégrante de l’utilisation d’un ordinateur. Lorsque les gens utilisent un ordinateur Linux pour les premières fois, qu’ils viennent du monde Windows ou macOS, ils sont souvent déconcertés lorsqu’ils essaient de copier et coller dans une fenêtre de terminal.

Sous Windows, vous utilisez Ctrl+C pour copier une section de texte en surbrillance et Ctrl+V pour le coller. Dans macOS, vous utilisez Command+C pour le copier et Command+V pour le coller. Ils suivent la même convention de C copier et V insérer.

Ces mêmes frappes fonctionnent dans la plupart des applications graphiques Linux, telles que l’éditeur gedit ou la LibreOffice suite bureautique.Ctrl+C copie le texte en surbrillance et Ctrl+V le colle au curseur. Notre nouveau venu sur Linux ne pense même pas au fait que ces conventions ont été appliquées à ces applications. Ils utilisent les touches de la mémoire musculaire et poursuivent leur travail.

Une fois que notre nouveau venu ouvre une fenêtre de terminal et essaie de copier et coller au Coque Bash invite de commande, que tout change. Ctrl+C et Ctrl+V se sont vu attribuer des fonctions bien avant que le copier-coller ne soit envisagé. En fait, ces frappes ont été recrutées bien avant l’invention des coques graphiques, à l’époque où un télétype (TTY) était une chose physique.

Ctrl + C et Ctrl + V dans les TTY

Lorsqu’un TTY était un appareil physique, Ctrl+C a été choisi comme combinaison de touches pratique pour générer un signal. Ce signal est SIGINT, qui indique au processus en cours de se terminer. Comme une fenêtre de terminal est un TTY émulé, cette combinaison de touches (et bien d’autres) a été préservée et répliquée dans l’émulation. Notez que c’est l’émulation qui est la. Le shell Bash est un programme exécuté dans ce TTY émulé.

On voit facilement les fonctions qui ont été allouées à Ctrl+C et Ctrl+V. Supposons que vous tapez la commande suivante et appuyez sur « Entrée ».

ls -R /

ls -R / dans une fenêtre de terminal

Parce que nous utilisons le -R (récursive) option ls La commande commencera à lister tous les fichiers et répertoires, en commençant par le répertoire racine. Après quelques instants, vous réalisez que ce n’est pas ce que vous vouliez, alors vous terminez le processus en appuyant sur Ctrl+C.

Ctrl+C

Ctrl + C dans une fenêtre de terminal

le ls le processus est terminé. La preuve visible de la Ctrl+C est mis en évidence dans la capture d’écran. Il est affiché comme ^C.

le Ctrl+V La combinaison de touches appelle «insertion textuelle». Cela vous permet d’entrer une représentation d’une clé dans ce que vous tapez, au lieu d’obtenir le de la clé. Pour voir cela, essayez les commandes suivantes (ne tapez pas les virgules). (Par exemple, pour essayer le premier, appuyez sur Ctrl + V, puis sur Entrée.)

Ctrl+V, Enter
Ctrl+V, PgDn
Ctrl+V, RightArrow
Ctrl+V, Esc

Ctrl + V, entrer dans une fenêtre de terminal

En bref, vous remarquerez peut-être qu’Enter est représenté par ^M . Nous avons vu plus tôt que Ctrl+C s’est présenté comme ^C. Il semblerait que ^ représente Ctrl. Alors Ctrl+M signifie probablement la même chose que Enter. Cela signifie-t-il que nous pouvons entrer Enter en tapant Ctrl+M? Essayez-le dans une fenêtre de terminal. Vous verrez que c’est le cas.

Donc, clairement, nous ne pouvons pas nous attendre Ctrl+C et Ctrl+V pour effectuer la copie et le collage de texte lorsqu’ils ont déjà des fonctions traditionnelles qui leur sont attribuées. Alors, que pouvons-nous utiliser?

Ctrl + Maj + C et Ctrl + Maj + V

Facilement mémorisables car ils sont très similaires à leurs homologues, Ctrl+Shift+C et Ctrl+Shift+V sont des remplacements directs pour Ctrl+C et Ctrl+V.

Si vous mettez en surbrillance du texte dans la fenêtre du terminal avec votre souris et appuyez sur Ctrl+Shift+C vous allez copier ce texte dans un tampon de presse-papiers.

Ctrl+Shift+C

Ctrl + Maj + C dans une fenêtre de terminal

Vous pouvez utiliser Ctrl+Shift+V pour coller le texte copié dans la même fenêtre de terminal ou dans une autre fenêtre de terminal.

Ctrl+Shift+V

Ctrl + Maj + V dans une fenêtre de terminal

Vous pouvez également coller dans une application graphique telle que gedit. Mais notez que lorsque vous collez dans une application et dans une fenêtre de terminal, vous devez utiliser Ctrl+V.

Coller depuis une fenêtre de terminal dans l'éditeur gedit

Et vous pouvez aussi aller dans l’autre sens. Vous pouvez mettre du texte en surbrillance gedit et frapper Ctrl+C , puis collez-le dans une fenêtre de terminal en utilisant Ctrl+Shift+V.

Copier depuis l'éditeur gedit et coller dans une fenêtre de terminal

La combinaison de touches Ctrl+Insert est le même que Ctrl+Shift+C , et la combinaison Shift+Insert est le même que Ctrl+Shift+V. La mise en garde ici est que ceux-ci ne peuvent être utilisés que dans la même fenêtre de terminal.

Utilisation de la souris: clic droit

Vous pouvez utiliser la souris pour copier et coller dans une fenêtre de terminal. Vous devez utiliser la souris pour mettre en surbrillance le texte que vous allez copier, alors pourquoi ne pas l’utiliser pour effectuer les actions de copier-coller?

Une fois que vous avez mis en évidence du texte, cliquez avec le bouton droit de la souris et sélectionnez «Copier» dans le menu contextuel.

fenêtre de terminal avec menu contextuel et copie en surbrillance

Pour coller le texte copié, cliquez à nouveau avec le bouton droit de la souris et sélectionnez «Coller» dans le menu contextuel.

fenêtre de terminal avec menu contextuel et coller la sélection

Le texte est collé à la position du curseur sur la ligne de commande. Dans cet exemple, le chemin relatif n’a pas été donné correctement et Bash ne peut pas changer de répertoire. L’utilisateur a manqué le «~ /» depuis le début du chemin. Ils ont tapé le «~ /», puis copié le reste du chemin de leur tentative précédente et l’ont collé dans leur deuxième ligne de commande.

Lorsqu’ils appuient sur Entrée, ils sont déplacés vers le répertoire.

fenêtre de terminal avec un répertoire modifié obtenu par copier-coller

Cet exemple montre le collage dans la même fenêtre de terminal, mais vous pouvez utiliser cette technique du clic droit pour coller dans différentes fenêtres de terminal. Vous pouvez également coller dans des applications graphiques en utilisant cette méthode.

Utilisation de la souris: bouton central

Il existe un moyen encore plus rapide de copier et coller à l’aide de la souris, à condition que votre souris ait un bouton central. Si vous appuyez (doucement!) Sur votre molette de défilement et qu’elle clique, vous avez un bouton central.

Mettez en surbrillance du texte dans une fenêtre de terminal, puis appuyez sur le bouton du milieu. Le texte en surbrillance est collé à la position du curseur sur la ligne de commande. Le copier-coller se produit en même temps.

Alors, mettez du texte en surbrillance:

fenêtre du terminal avec du texte en surbrillance

Appuyez ensuite sur le bouton du milieu:

fenêtre de terminal avec texte en surbrillance collé sur la ligne de commande

Vous pouvez utiliser cette méthode pour coller entre différentes fenêtres de terminaux et dans des applications graphiques également. Mettez simplement le texte en surbrillance, passez à l’autre fenêtre de terminal ou application et appuyez sur le bouton du milieu.

Old School – Pas de souris

Et quand vous n’avez pas de souris? Si vous ne pouvez mettre en évidence aucun texte, comment pouvez-vous le copier et le coller?

Les serveurs Linux sont souvent configurés sans environnement de bureau graphique (GDE), ce qui signifie que vous n’avez pas accès à une souris. Même sur un ordinateur Linux qui exécute un environnement de bureau graphique comme GNOME et que vous avez une souris, il y aura des cas où vous ne pourrez pas utiliser la souris pour mettre du texte en surbrillance.

Par exemple, vous avez peut-être basculé vers l’un des téléscripteurs supplémentaires. Sur les distributions modernes, celles-ci sont situées à Ctrl+Alt+F3 (TTY3) à Ctrl+Alt+F6 (TTY6). (Ctrl+Alt+F2 vous ramènera à votre session GDE et Ctrl+Alt+F1 vous amènera à l’écran de connexion de votre GDE.)

Peut-être que vous utilisez même un véritable périphérique matériel TTY pour vous connecter à un ordinateur Linux ou Unix.

Dans tous les cas, ces techniques fonctionneront pour vous. Le point à retenir ici est que ce n’est pas et coller, c’est et coller, et vous ne pouvez couper et copier qu’à partir de la ligne de commande actuelle. Bien sûr, vous pouvez utiliser les touches fléchées pour faire défiler votre historique et trouver la ligne de commande à partir de laquelle vous souhaitez couper, copier et coller.

Les frappes que vous pouvez utiliser sont:

  • Ctrl + W: Coupez le mot avant le curseur et ajoutez-le au tampon du presse-papiers.
  • Ctrl + K: Coupez la partie de la ligne après le curseur et ajoutez-la au tampon du presse-papiers. Si le curseur est au début de la ligne, il coupera et copiera la ligne entière.
  • Ctrl + U: Coupez la partie de la ligne avant le curseur et ajoutez-la au tampon du presse-papiers. Si le curseur est à la fin de la ligne, il coupera et copiera la ligne entière.
  • Ctrl + Y: Collez le dernier texte coupé et copié.

Passons à TTY3. (Utilisez Ctrl + Alt + F1 pour revenir à votre bureau par la suite.)

Ctrl+Alt+F3
tty

tty3 dans une fenêtre de terminal

Nous avons un fichier que nous souhaitons supprimer, vérifions qu’il est ici.

ls -l file_to_delete.txt

ls -l file_to_delete.txt dans une fenêtre de terminal

Si nous utilisons la touche Flèche vers le haut, nous appellerons la dernière commande que nous avons utilisée dans l’historique des commandes. Nous pourrions simplement éditer cette ligne, mais le but est de démontrer le couper, copier et coller, nous allons donc accomplir notre tâche de supprimer le fichier de manière légèrement prolongée.

Commande récupérée de l'historique des commandes dans une fenêtre de terminal

Nous allons déplacer le curseur sur la première lettre du nom du fichier, puis appuyer sur Ctrl+K. Cela supprimera cette partie de la ligne et copiera le texte dans la mémoire tampon du presse-papiers.

L'effet de Ctrl + K dans une fenêtre de terminal

Nous allons appuyer sur Retour arrière jusqu’à ce que nous effacions la ligne.

Ligne effacée avec retour arrière dans une fenêtre de terminal

Nous taperons le rm pour supprimer le fichier.

rm dans une fenêtre de terminal

Et maintenant nous pouvons frapper Ctrl+Y et collez le reste de la ligne.

L'effet de Ctrl + Y dans une fenêtre de terminal

Ceci termine notre commande et nous pouvons appuyer sur Entrée pour supprimer le fichier.

Fichier supprimé sans message d'erreur dans une fenêtre de terminal

Ce type de couper, copier et coller ne peut pas être utilisé entre les TTY supplémentaires. Vous ne pouvez pas couper, copier et coller entre TTY3 et TTY4, par exemple.

Les ATS supplémentaires sont mieux considérés comme une ligne d’ATS physiques assis côte à côte. Il n’y a aucun moyen de couper et coller entre les différents terminaux physiques, et il n’y a aucun moyen de le faire dans ces émulations.

Copiez ça, contrôlez

Quelle que soit la situation dans laquelle vous vous trouvez lorsque vous utilisez un ordinateur Linux, il y aura un moyen de copier et coller. Vous avez des options. Certaines d’entre elles sont des options étranges, mais au moins il existe des options.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Quelle est la différence entre les téléviseurs OLED et QLED de Samsung?

Quelle est la différence entre les téléviseurs OLED et QLED de Samsung?

Correction lorsque toutes les icônes de vignette affichent la même image ou une mauvaise image

Correction lorsque toutes les icônes de vignette affichent la même image ou une mauvaise image