Como posso canalizar a saída de um comando bash ou shell para a placa de clipes? [duplicado]

5

Para minimizar o uso do mouse (acessibilidade e questões de saúde), como canalizar o padrão para a placa de clipes do SO?

Ou seja, eu gostaria de fazer algo como:

$ drush uli | copy-this-to-clipbaord

$ drush uli > copy-this-to-clipbaord

Possível?

    
por Richard 29.06.2015 / 16:36

3 respostas

9

Instale o xsel pelo link acima ou pelo terminal:

sudo apt-get install xsel

Para copiar a saída de um comando use:

*command* | xsel -ib

Um exemplo:

$ drush uli | xsel -ib

Você pode simplificar editando (crie-o, se ainda não tiver, com touch ~/.bash_aliases ) seu arquivo ~/.bash_aliases .
Adicione esta linha a ele: alias clipboard = 'xsel -ib' (você pode usar qualquer nome, não apenas clipboard ).

Depois de fazer isso, você pode usar: *command* | clipboard

    
por DevRobot 29.06.2015 / 17:24
5

Eu uso o xclip.

Exemplo:

bashscript.sh | xclip -sel clip
    
por Sergiy Kolodyazhnyy 29.06.2015 / 17:31
4

Você pode usar xsel exatamente assim:

xsel -i -b >/dev/null
  • A opção -i ( --input ) faz a leitura da entrada da entrada padrão
  • A opção -b ( --clipboard ) faz com que ele use o buffer da área de transferência, em vez da seleção, ou um dos buffers menos comumente adicionais.
  • >/dev/null está escondendo alguma mensagem de erro irritante - que não pode acontecer com essas opções definidas.

Então, por que não tentar

drush uli | xsel -i -b

e diga se colar da área de transferência cola o texto correto!
Deixei de fora a parte escondendo erros para testes.

    
por Volker Siegel 29.06.2015 / 17:23