Comment puis-je diriger la sortie standard du terminal (stdout) vers le presse-papier?

70

Par exemple,

Dites que je veux répertorier le contenu d'un dossier et le coller directement dans une fenêtre de discussion pour qu'un ami puisse la voir.

Je me rends compte que je pourrais faire ls > filename.txt pour créer un fichier (filename.txt) avec ces contenus; Je devais ensuite ouvrir ou imprimer le fichier et sélectionner et copier manuellement le bloc de texte ( qui peut être agaçant / fastidieux ). Je pouvais également sélectionner et copier le fichier. sortie de ls directement depuis la fenêtre du terminal.

Il serait beaucoup plus rapide / simple de transférer simplement la sortie standard vers le presse-papier .

Quelle commande de terminal me permet de faire cela?

    
posée Insperatus 05.09.2012 - 17:28
la source

1 réponse

85

Cela peut être fait avec soit xsel ou xclip utilitaires de ligne de commande. Comme aucun des programmes n'est livré avec Ubuntu par défaut, vous devez d'abord les installer via Software Center ou le terminal. Voici comment dans le terminal (mais rappelez-vous que vous n'avez besoin que de l'un de ces deux.)

sudo apt install xsel
sudo apt install xclip

Maintenant, quelques exemples. Si vous voulez copier la sortie de ls dans le presse-papiers, voici ce que vous feriez:

Avec xsel:

ls | xsel -ib

Avec xclip:

ls | xclip -sel clip

Bien entendu, cela peut également être utilisé pour d’autres commandes de terminal . Disons que vous voulez coller vos informations de réseau dans un forum d'aide.

Avec xsel:

sudo lshw -C network | xsel -ib

Avec xclip:

sudo lshw -C network | xclip -sel clip

Facilitez les choses avec un nouvel alias bash!

Modifiez votre fichier ~/.bash_aliases (s'il n'existe pas encore, créez-le d'abord avec touch ~/.bash_aliases )

Ajoutez ensuite un (selon le programme que vous avez décidé d’utiliser) des éléments suivants:

alias copy='xclip -sel clip'

ou

alias copy='xsel -ib'

Puis sauvegardez et fermez.

Maintenant (après avoir redémarré votre terminal), vous pouvez envoyer une sortie standard au presse-papiers en la redirigeant simplement vers "copy" (ou ce que vous décidez de nommer votre nouvel alias)

Par exemple:

ls | copy
    
réponse donnée Insperatus 05.09.2012 - 17:28
la source

Lire d'autres questions sur les étiquettes