Como enviar eficientemente o texto digitado na linha de comando para a área de transferência do sistema sem usar o mouse?

14

Digamos que eu digitei o seguinte comando longo na linha de comando

 $ some very long command that I want to copy to the clipboard

Como posso colocar isso na área de transferência do sistema com eficiência? Estou usando o Gnome Terminal 2.23.1.

Sei que posso pegar o mouse, destacar e copiá-lo, mas quero uma solução geral para o teclado.

Também seria bom se generalizasse para vários programas de linha de comando.

Por exemplo, no bash no modo vi, posso pressionar v e editar o comando no vim e, assim, usar a cópia do Vim nos recursos da área de transferência, mas isso não funciona quando se usa R na linha de comando. Também é um pouco lento.

Eu gostaria que, se no modo vi, eu pudesse pressionar yy e copiar o conteúdo da linha para a área de transferência do sistema, mas isso não parece funcionar. Além disso, qualquer comando de yanking parece não copiar o conteúdo para a área de transferência do sistema; eles parecem copiar apenas para um buffer usado pelo bash.

UPDATE:

Depois de postar, encontrei

por Jeromy Anglim 05.10.2011 / 03:13

3 respostas

3

Você também pode usar um gerenciador da área de transferência como parcellite . É um gerenciador de área de transferência GTK + que também possui recursos de área de transferência de linha de comando

Você pode usá-lo via linha de comando

echo "some very long command that I want to copy to the clipboard" | parcellite
##or##
parcellite "some very long command that I want to copy to the clipboard"

Ele não é instalado por padrão e você terá que instalar o parcellite por sudo apt-get install parcellite

    
por Nitin Venkatesh 05.10.2011 / 09:58
1

Então, os fechamentos que eu posso obter é usando o histórico e o xclip juntos fazendo isso

echo !! | xclip

Isto irá colocar o último comando na área de transferência do botão central. Eu ainda estou procurando por algo melhor, embora eu gostaria de baixá-lo para um comando. No entanto, eu fico preso porque o histórico não funciona em scripts de shell e não sei se há uma maneira de usar !! corretamente em um alias. É claro que isso não parece ser exatamente o que você está pedindo minha intenção é usar isso para tomar notas do que estou fazendo. Qualquer pensamento?

    
por user27643 15.10.2011 / 20:27
0

Você deve ser capaz de usar Ctrl + Deslocar + C para Copiar e Ctrl + Shift + V para colar em qualquer lugar no terminal.

    
por Dirk Hartzer Waldeck 05.10.2011 / 08:24