incapaz de colar com o xclip fora do terminal

41

Estou tentando copiar do terminal com o xclip e colá-lo no ambiente de área de trabalho da unidade no editor de texto do gedit. Eu posso copiar e colar com o xclip no terminal:

$ cat line-size.c | xclip
xclip -o > input5.txt
cat input5.txt
#include <stdio.h>
...

No entanto, quando pressiono control + v para colar no gedit, ele cola apenas a última coisa que copiei no desktop da unidade, como algo do navegador firefox.

Como colar em aplicações GUI algo que copiei do terminal?

JohnMerlino
fonte

Respostas:

72

Eu acho que é apenas uma questão de entender as diferentes pranchetas de seleção usadas pelo xcliputilitário

   -selection
          specify  which X selection to use, options are "primary" to use
          XA_PRIMARY (default), "secondary" for  XA_SECONDARY  or  "clip‐
          board" for XA_CLIPBOARD

Quando você faz cat line-size.c | xclipo comportamento padrão, é copiar para o buffer de seleção X principal - para colar a partir desse buffer, é necessário usar o botão do meio do mouse em vez da combinação Ctrl+ v.

Em vez disso, para copiar para a área de transferência, para colar com Ctrl+ v, você precisará fazer

cat line-size.c | xclip -selection clipboard
chave de aço
fonte
11
É igualmente fácil de colar canalizando para o xclip sem argumentos adicionais. Em vez de Ctrl + v, basta usar o clique do meio do mouse.
TheBicentennialMan 31/03
Isso pode ser alterado paraxclip < line-size.c -selection clipboard
JamesTheAwesomeDude
@SubhamoySengupta see my edit
kbtzr
5
A instrução cat line-size.c | xclip -sel cliptem o mesmo resultado que:cat line-size.c | xclip -selection clipboard
Geison Santos 06/06
Não consigo imaginar que o caso de uso padrão xclipfosse interagir com algo além da área de transferência do usuário.
aaaaaa
6

Caso alguém esteja procurando uma versão mais curta sem usar aliases. Usando em something|xclip -se cvez de apenas something|xclipvocê pode pressionar Ctrl + V / Ctrl + Shift + V e ver um resultado desejável. Onde something — cat somefile.txtpor exemplo.

daGo
fonte