web-dev-qa-db-fra.com

Comment puis-je envoyer STDIN au Presse-papiers?

Y a-t-il une fonctionnalité dans UNIX qui permet les éléments suivants:

echo "Some Text" | copy-to-clipboard
45
Stefan

Il y a quelques outils capables d'écrire dans le presse-papiers; J'utilise xsel . Il faut des drapeaux pour écrire à la sélection X primaire (-p), Sélection secondaire (-s), ou presse-papiers (-b). En passant -i Dites-le de lire de Stdin, de sorte que vous voulez:

$ echo "Some Text" | xsel -i -b
35
Michael Mrozek

Utilisation xclip, comme @nicolas a suggéré que si vous souhaitez collecter ultérieurement le contenu du presse-papiers, par exemple avec Ctrl + V, vous pouvez l'utiliser de cette façon:

$ echo "Some Text" | xclip -selection clipboard
12
danidemi

Sur Mac OS X, il y a la charmante pbcopy et pbpaste commandes très utiles :)

7
cwd

Le plus simple est probablement xclip:

$ echo "Some Text" | xclip

Puis coller à l'aide du bouton central de votre souris.

Comme xsel, il n'est généralement pas installé par défaut, vous devrez peut-être l'installer (Sudo apt-get install xclip sur Debian/Ubuntu).

0
Nicolas Raoul

xclip est un bon moyen d'aller comme répondu par @nicolas Raoul, mais lors de la tuyauterie tout ce qui contient une nouvelle ligne dans le presse-papiers, tels que pwd, la nouvelle ligne est également copiée. Dans certaines situations, il peut être désiré, mais surtout on ne veut pas la nouvelle ligne.

La solution est soit:

echo -n $(pwd) | xclip -selection clipboard

(Le -n Supprime la nouvelle ligne de l'argument écho)

ou:

printf %s $(pwd) | xclip -selection clipboard

Le "" Autour de $(pwd) peut être requis, mais cela fonctionne avec et sans Ubuntu avec Bash.

0
calocedrus