web-dev-qa-db-fra.com

Comment puis-je diriger la sortie d'une commande bash ou Shell vers le presse-papiers?

Afin de minimiser l'utilisation de la souris (raisons d'accessibilité et de santé), comment puis-je transférer la norme au clipboard du système d'exploitation?

C'est-à-dire que j'aimerais faire quelque chose comme:

$ drush uli | copy-this-to-clipbaord

$ drush uli > copy-this-to-clipbaord

Possible?

5
Rick

Installez xsel soit via le lien ci-dessus, soit via le terminal:

Sudo apt-get install xsel

Pour copier le résultat d'une commande, utilisez:

* commande * | xsel -ib

Un exemple:

$ drush uli | xsel -ib

Vous pouvez le simplifier en modifiant (créez-le si vous ne l'avez pas déjà avec touch ~/.bash_aliases) votre fichier ~/.bash_aliases.
Ajoutez-y cette ligne: alias clipboard = 'xsel -ib' (vous pouvez utiliser n’importe quel nom, pas seulement clipboard).

Une fois que vous avez terminé, vous pouvez utiliser: *command* | clipboard

9
TellMeWhy

J'utilise xclip.

Exemple:

bashscript.sh | xclip -sel clip
5

Vous pouvez utiliser xsel de cette façon:

xsel -i -b >/dev/null
  • L'option -i (--input) permet de lire l'entrée à partir de l'entrée standard.
  • L'option -b (--clipboard) lui permet d'utiliser le tampon du presse-papiers à la place de la sélection ou l'un des tampons moins courants.
  • >/dev/null cache un message d'erreur gênant - il est évident que cela peut se produire avec ces options.

Alors pourquoi ne pas essayer

drush uli | xsel -i -b

et dire si coller à partir du presse-papiers colle le bon texte!
J'ai laissé de côté la partie cachant des erreurs pour les tests.

4
Volker Siegel