Imprimir o conteúdo da área de transferência do sistema no bash

10

Existe uma maneira de colocar alguma saída de comando na área de transferência do sistema xclip.

some-command | xclip -selection clipboard

Eu gostaria de executar uma tarefa inversa - Imprimir a área de transferência do sistema no terminal. Como pode ser feito?

Tear
fonte
Não é um duplicado, mas definitivamente relacionado, é esta questão e, especialmente, as respostas dadas
Bananguin

Respostas:

8

De acordo com a página de manual, a -oopção de xclipempurrar os dados na direção oposta:

   -i, -in
          read text into X selection from standard input or files (default)

   -o, -out
          prints the selection to standard out (generally for piping to a file or program)

No seu comando acima, o -iestá sendo assumido.

Bratchley
fonte
7

Outra opção é o xselprograma:

By default, this program outputs the selection without modification  if
   both  standard  input  and standard output are terminals (ttys). Other
   wise, the current selection is output if standard output is not a  ter
   minal  (tty),  and the selection is set from standard input if standard
   input is not a terminal (tty). If any input or output options are given
   then the program behaves only in the requested mode.

Então, basta copiar algo para a área de transferência e executar xselpara imprimi-lo no terminal. Você pode ler man xselas opções mais avançadas, como qual área de transferência deve ser usada etc.

terdon
fonte
5
Para simplificar as coisas ... é isso que eu faço: alias pbcopy='xsel --clipboard --input'; alias pbpaste='xsel --clipboard --output' escolhi os nomes para combinar com os comandos do MacOS.
Bananguin