Como copiar o texto das máquinas remotas para a área de transferência das máquinas locais através do SSH?

6

Eu trabalho em uma máquina remota através de ssh . Eu tenho um arquivo de texto muito grande (aprox. 500 linhas) que eu normalmente preciso modificar, depois copio o conteúdo desse arquivo e o colo no meu navegador local. A maneira que eu costumo fazer isso é cat filename e, em seguida, selecione / copie a saída ssh. Isso leva muito tempo.

Eu queria saber se existe um utilitário que irá colocar o conteúdo do arquivo remoto na minha área de transferência local.

    
por recluze 05.04.2012 / 05:28

3 respostas

3

Experimente os ssh pipes. Aqui está um exemplo que funciona com o OS X (Mountain Lion) (para Linux, ajuste o programa cli clipboard de acordo):

Na máquina ssh remota, execute:

$ cat /dir/file.txt | ssh user@localMachine pbcopy

Você pode usar essa funcionalidade em editores remotos do vim usando certificados ssh para autorização e adicionando o seguinte ao vimrc na máquina remota:

vmap <C-c> y:call system("ssh user@localMachine pbcopy", getreg("\""))

Control-C no editor remoto deve agora copiar para a área de transferência local.

    
por 05.09.2012 / 04:00
2

Pessoalmente, eu abriria o arquivo remoto localmente, por exemplo, Modo SCP do Vim :

vim scp://uname@host/myfile

edite e copie-o do Vim (por exemplo, em gg"*yG ).

Como alternativa, você pode usar sshfs e o editor local de sua preferência.

    
por 05.04.2012 / 07:52
1

Se você habilitar o encaminhamento do X, o xclip poderá fazer isso.

xclip -i -selection clipboard somefile
    
por 05.04.2012 / 05:30