Selecione / copie / cole no terminal usando apenas o teclado

14

Estou procurando uma maneira de selecionar , copiar e colar o texto no terminal completamente sem o mouse.

Estou usando tmuxaté agora, mas acho as combinações de teclas um pouco complexas para o uso diário de copiar e colar, e agora estou procurando alternativas.

Vocês têm alguma sugestão?

Para ficar claro, não se trata de canalizar para a área de transferência, mas de selecionar o texto, como é possível, por exemplo tmux!

Morten
fonte
Veja minha resposta aqui: askubuntu.com/a/756348/295286 . Eu criei uma função que copiará qualquer texto que esteja na frente da área de transferência. Isso funciona para copiar os comandos. Quanto à saída, ela deve ser canalizada #
Sergiy Kolodyazhnyy 20/04
1
Ok pessoal, isso não tem nada a ver com stdout - trata-se de mover um cursor para algum texto impresso anterior Selecione-o e copie / cole-o na linha de entrada atual no terminal: -D Desculpe por não ser mais preciso na descrição.
Morten
A melhor maneira de adicionar informações adicionais à sua pergunta é editando-a, com o botão editar . É melhor visível dessa maneira, e os comentários são principalmente para fins secundários e temporários. Os comentários são removidos sob várias circunstâncias. Qualquer coisa importante para sua pergunta deve estar na própria pergunta.
precisa saber é o seguinte

Respostas:

3

Considere xclip, que é uma interface de linha de comando para a área de transferência do X e está disponível com sudo apt-get install xclip.

Você deve ter notado que no Ubuntu, se você selecionar algum texto e pressionar o botão do meio do mouse, esse texto será colado em qualquer entrada que estiver em foco. xclipse encaixa nisso; portanto, se você executar o seq 10 | xclip -ibotão do meio do mouse em algum lugar, colará os números de 1 a 10. Se você selecionar meu nome de usuário e depois executar xclip -o | cowsay, receberá uma vaca dizendo a palavra "ymbirtt".

ymbirtt
fonte
3
Estou surpreso que esta resposta seja aceita. O @morten apontou especificamente que não se trata de canalizar para a área de transferência, mas de selecionar o texto, como é possível, por exemplotmux . Parece que as respostas de @daisy e @ blue112 estão no ponto.
Tad Lispy #
1
@ TadeuszŁazurski, eu também, honestamente. xclipÉ realmente uma boa ferramenta que complementa a resposta existente, mas não tenho certeza de que é a resposta
ymbirtt
10

Eu sempre uso Ctrl+ Shift+ Ce Ctrl+ Shift+ Vpara copiar e colar no meu terminal (não tmux).
Você pode alterar esses atalhos de teclado nas preferências de teclado do seu terminal (não tmux).

Se, no entanto, você quiser continuar usando o tmux, também poderá alterar os atalhos de teclado do tmux adicionando comandos ao ~/.tmux.conf. basta adicionar o seguinte nesse arquivo:

bind-key -n [shortcut. for example Ctrl+v is C-v] [what you want to do. for example 'new-window' etc]

Isso parecerá assim

bind-key -n C-t new-window

Você não precisa da chave de prefixo do comando para executar os comandos no ~/.tmux.confarquivo.

Para mais informações sobre os itens disponíveis, ~/.tmux.confconsulte este link

Cópias e colagens muito rudimentares podem ser feitas usando isso, no entanto, para um pouco mais de utilidade, recomendo o uso de uma configuração de copiar / colar no estilo Vim.
A ativação de um estilo Vim de copiar / colar pode ser feita com esse arquivo de configuração ou outro arquivo de configuração . No entanto, eles exigem o uso da chave de prefixo.
Alguém até fez uma extensão tmux para simplificar a ação de copiar / colar na área de transferência do sistema no tmux. Pode valer a pena dar uma olhada.

Se você quiser uma alternativa para o Tmux, tente dvtm ( sudo apt-get install dvtm dtach). Eu não o usei, mas parece que tem opções semelhantes.

Akisame
fonte
4

Para copiar, use Ctrl+ Shift+C

Para colar, use Ctrl+ Shift+ Vou Shift+insert

Outra maneira de fazer isso:

Primeiro comando de execução screen, depois pode executar as seguintes etapas:

  • Pressione Ctrl+ a+ EscEle colocará a tela no modo de cópia.
  • Agora, mova o cursor para o início da seção para copiar e pressionar Enter.
  • depois, mova o cursor para o final da seção para copiar e pressionar Enter.
  • Agora, pressione Ctrl+ a+ ]para colar.
margarida
fonte
5
Ótimo, mas para copiar algo, você deve selecioná-lo primeiro. Como você seleciona o texto sem o mouse?
Ponytech
1
@Ponytech Eu tentei fazer no gnome-terminal sem executar nenhum comando, screen mas não consegui.
daisy
Usar a tela é a única maneira que também encontrei até agora. Obrigado pela atualização
Ponytech
2

Você pode usar o screenmodo de seleção.

Entre em uma sessão de tela usando o screencomando

Em seguida, use Ctrl+ ae Escpara entrar no modo de seleção.

Em seguida, você pode mover o cursor, selecionar algum texto usando space, sair do modo de seleção e colá-lo quando desejar com Ctrl+ ae ].

Mais informações aqui: http://web.mit.edu/gnu/doc/html/screen_11.html

blue112
fonte