Shell do Linux: Copie a saída para a área de transferência sem o mouse?


25

É possível copiar a saída na área de transferência sem usar o mouse?

Por exemplo, eu gostaria de fazer algo assim:

$ pwd >> área de transferência


cat / etc / passwd | xsel --clipboard
Abhisheietk

Respostas:


25

Você pode obter e usar os comandos xclipe xsel. As instruções para obtê-las e usá-las estão aqui .

Sem argumentos, xclipcopie para a área de transferência principal (colar com o botão do meio) em vez da área de transferência Ctrl- C/ Ctrl- V/ clique com o botão direito do mouse no menu de contexto.

Tente echo foo | xclip -selection clipboardcopiar algum texto para o último.

Para enviar a área de transferência para a saída padrão: xclip -selection clipboard -o

O utilitário equivalente para MacOS é pbcopy(e pbpaste)


1
@brauliobo: Onde está "aqui"? Sério, o que você quer dizer? Não funciona de que maneira, exatamente?
Pausado até novo aviso.

1
@DennisWilliamson eu tentei cat file | xclipe ele não funciona
brauliobo

1
@brauliobo: Não funciona de que maneira, exatamente ? Mensagem de erro? Mau comportamento? Anomalias do campo magnético?
Pausado até novo aviso.

8
@brauliobo: Presumo que klipperseja um visualizador da área de transferência. Experimente cat file | xclip -selection clipboardSem os argumentos extras, xclipcopie para a área de transferência principal (pasta com o botão do meio do mouse) em vez da área de transferência Ctrl-C / Ctrl-V / clique com o botão direito do mouse no menu de contexto.
Pausado até novo aviso.

1
@ Dennis, talvez você possa adicionar o último comentário à resposta, pois isso é bastante importante e não é óbvio, e é uma ótima adição.
Kvothe

2

Receio que não exista "prancheta" na maioria dos shell do linux, pelo menos nenhum que eu conheça. Há uma área de transferência no servidor X (se o seu sistema tiver X11, você poderá acessá-la usando o xclipcomando). Se você se conectar à sua conta shell usando algum software emulador de ssh / terminal, como o PuTTy, poderá usar a área de transferência do sistema que está usando, mas isso ainda seria uma área de transferência externa e talvez você não consiga evitar o uso do mouse.

O que eu encontrei é esse pequeno script do bash, encontrado em http://geek.phatus.com/2010/01/create-a-simple-yet-very-useful-bash-clipboard/ . Basicamente, cria um arquivo temporário que serve como área de transferência - você pode limpar, executar, gravar etc. seus dados temporários usando um conjunto de comandos, que é o que uma área de transferência faz;)


o op era um pouco incerto sobre sua configuração: ele se referia à área de transferência do xserver.
Akira

1

Se você estiver em um MAC, poderá usar o pbcopy assim:

pbcopy < thing_to_write_to_clipboard

0

Eu fiz uma pequena ferramenta fornecendo funcionalidade semelhante, sem usar o xclip ou o xsel. A saída padrão é copiada para uma área de transferência e pode ser colada novamente no terminal, consulte:

https://sourceforge.net/projects/commandlinecopypaste/

Observe que essa ferramenta não precisa de uma sessão-x. A área de transferência pode ser usada apenas dentro do terminal e não pode ser colada com ctrl + v ou clique com o botão do meio do mouse em outras janelas do x


0

E de uma maneira feia, para os casos em que você deseja copiar a saída do terminal para a área de transferência, mas não possui um mouse conectado à sua máquina - usando o recurso "teclas do mouse" do X.

Pressione Shift+ NumLocke as teclas do teclado numérico funcionarão para controlar o movimento do cursor. Você pode pressionar Num 0para simular, pressionar e segurar LMB e mover o cursor conforme necessário, e pressionar Num 5para simular a liberação do LMB. Agora você selecionou seu texto. Para simular o RMB, pressione Num -para alterar o botão ativo do mouse e, em seguida, Num 5para obter o menu de contexto. Agora você deseja retornar ao modo LMB: pressione Num /. Agora você pode mover o cursor para a entrada do menu "Copiar" e pressionar Num 5. Isso é tudo. Você tem seu texto na área de transferência. Pressione Shift+ NumLockpara obter o seu teclado numérico para sua função original.

PS: Em algumas distros (por exemplo, Kubuntu), o atalho das teclas do mouse parece estar desativado por padrão ou de alguma forma oculto.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.