Sélectionner / copier / coller dans le terminal en utilisant uniquement le clavier

14

Je cherche un moyen de sélectionner , copier et coller le texte dans le terminal sans la souris.

J'utilise tmuxjusqu'à présent, mais je trouve ses combinaisons de touches un peu complexes pour une utilisation quotidienne du copier-coller, et je cherche maintenant des alternatives.

Avez-vous des suggestions?

Pour être clair, il ne s'agit pas de diriger vers le presse-papiers mais de sélectionner le texte comme c'est possible par exemple tmux!

Morten
la source
Voir ma réponse ici: askubuntu.com/a/756348/295286 . J'ai créé une fonction qui copiera tout le texte qui se trouve devant dans le presse-papiers. Cela fonctionne pour copier les commandes. Quant à la sortie, elle doit être canalisée
Sergiy Kolodyazhnyy
1
Ok les gars, cela n'a rien à voir avec stdout - il s'agit de déplacer un curseur sur un texte imprimé précédent Sélectionnez-le et copiez / collez-le sur la ligne d'entrée actuelle dans le terminal: -D Désolé de ne pas être plus précis dans la description.
Morten
La meilleure façon d'ajouter des informations supplémentaires à votre question est de la modifier à l'aide du bouton Modifier . C'est mieux visible de cette façon, et les commentaires sont principalement à des fins secondaires et temporaires. Les commentaires sont supprimés dans diverses circonstances. Tout ce qui est important pour votre question devrait être dans la question elle-même.
guntbert

Réponses:

3

Considérez xclip, qui est une interface de ligne de commande pour le presse-papiers X, et est disponible avec sudo apt-get install xclip.

Vous avez peut-être remarqué que dans Ubuntu, si vous sélectionnez du texte, puis appuyez sur le bouton central de la souris, ce texte sera collé dans toute entrée mise au point. xclipaccroche juste dedans, donc si vous exécutez seq 10 | xclip -ipuis au milieu de la souris quelque part, vous collerez les nombres 1 à 10. Si vous sélectionnez mon nom d'utilisateur puis exécutez xclip -o | cowsay, vous obtiendrez une vache disant le mot "ymbirtt".

ymbirtt
la source
3
Je suis surpris que cette réponse soit acceptée. @morten a spécifiquement souligné qu'il ne s'agit pas de diriger vers le presse-papiers mais de sélectionner le texte comme c'est possible par exempletmux . Il semble que les réponses de @daisy et @ blue112 soient exactes.
Tad Lispy
1
@ TadeuszŁazurski, moi aussi, honnêtement. xclipest un très bon outil qui complète la réponse existante, mais je ne suis pas sûr que ce soit la réponse
ymbirtt
10

J'utilise toujours Ctrl+ Shift+ Cet Ctrl+ Shift+ Vpour copier et coller dans mon terminal (non tmux).
Vous pouvez modifier ces raccourcis clavier dans les préférences clavier de votre terminal (non-tmux).

Si toutefois vous souhaitez continuer à utiliser tmux, vous pouvez également modifier les raccourcis clavier de tmux en ajoutant des commandes à ~/.tmux.conf. ajoutez simplement ce qui suit dans ce fichier:

bind-key -n [shortcut. for example Ctrl+v is C-v] [what you want to do. for example 'new-window' etc]

Il ressemblera à ceci

bind-key -n C-t new-window

Vous n'avez pas besoin de la clé de préfixe de commande pour exécuter les commandes dans le ~/.tmux.conffichier.

Pour plus d'informations sur les choses disponibles pour ~/.tmux.confvérifier ce lien

Le copier-coller très rudimentaire peut être fait en utilisant cela, mais pour un peu plus d'utilité, je recommande d'utiliser une configuration de copier / coller de style Vim.
L'activation d'un copier / coller de style Vim peut être effectuée avec ce fichier de configuration ou un autre fichier de configuration . Ceux-ci nécessitent toutefois l'utilisation de la clé de préfixe.
Quelqu'un a même créé une extension tmux pour simplifier l'action copier / coller dans le presse-papiers du système dans tmux. Cela pourrait valoir le coup d'oeil.

Si vous voulez une alternative pour Tmux, vous pouvez essayer dvtm ( sudo apt-get install dvtm dtach). Je ne l'ai pas utilisé moi-même mais il semble qu'il ait des options similaires.

Akisame
la source
4

Pour copier, utilisez Ctrl+ Shift+C

Pour coller, utilisez Ctrl+ Shift+ Vou Shift+insert

Une autre façon de procéder:

Exécutez d'abord la commande screen, après quoi vous pouvez effectuer les étapes suivantes:

  • Appuyez sur Ctrl+ a+ EscCela mettra l'écran en mode copie.
  • Maintenant, déplacez le curseur au début de la section pour copier et appuyez sur Entrée.
  • ensuite, déplacez le curseur à la fin de la section pour copier et appuyez sur Entrée.
  • Maintenant, appuyez sur Ctrl+ a+ ]pour coller.
Marguerite
la source
5
Très bien, mais pour copier quelque chose, vous devez d'abord le sélectionner. Comment sélectionnez-vous du texte sans la souris?
Ponytech
1
@Ponytech J'ai essayé de faire dans gnome-terminal sans exécuter aucune commande comme screen mais je n'ai pas pu.
marguerite
Utiliser l'écran est le seul moyen que j'ai également trouvé jusqu'à présent. Merci pour la mise à jour
Ponytech
2

Vous pouvez utiliser le screenmode de sélection.

Entrez une session d'écran à l'aide de la screencommande.

Ensuite, utilisez Ctrl+a et Escpour entrer dans le mode de sélection.

Vous pouvez ensuite déplacer votre curseur, sélectionner du texte à l'aide de space, quitter le mode de sélection et le coller quand vous le souhaitez avec Ctrl+ aet ].

Plus d'informations ici: http://web.mit.edu/gnu/doc/html/screen_11.html

blue112
la source