원격 vps의 vim과 로컬 vim 간에 데이터를 복사하여 붙여넣는 방법은 무엇입니까?

원격 vps의 vim과 로컬 vim 간에 데이터를 복사하여 붙여넣는 방법은 무엇입니까?

SSH를 사용하여 원격 VPN에 연결합니다.

ssh user@vps_ip

vim을 사용하여 원격 vps에서 파일을 편집하고 한 줄을 작성하십시오.

some text

일반 모드에서 을 누르세요. 로컬 vim에 yy어떻게 붙여넣나요 ? 그 반대.some text

1.VIM의 GUI 스타일
데비안 운영 체제의 로컬 vim에서:

vim --version | grep clipboard
+clipboard       +job             +path_extra      +user_commands
+eval            +mouse_dec       +statusline      +xterm_clipboard

Debian 운영 체제를 사용하는 원격 vim에서:

vim --version | grep clipboard
-clipboard       +iconv           +path_extra      -toolbar
+eval            +mouse_dec       +startuptime     -xterm_clipboard

원격 vim에 vim-gtk를 설치할 수 없습니다.

sudo yum  install -y vim-gtk
No package vim-gtk available.

2. 로컬 시스템에 X 서버가 있습니까?

3. 로컬 시스템에서 GUI 로그인 세션을 사용하고 있습니까?
로컬 운영 체제의 데스크탑은 LXDE이며 GUI 로그인 세션에 들어갑니다.

답변1

실행하여 원격 파일을 열 수 vim scp://user@vps_ipi/remote_file있고 로컬 파일을 열 수 있습니다. :e local_file그런 다음 및 명령을 사용하여 버퍼 간을 전환하고 :bnyy명령 을 사용하여 p버퍼 간에 복사하여 붙여넣을 수 있습니다.

원격 스크립트를 연 다음 ggVGy버퍼를 전환 :bn하고 P.

답변2

동일한 호스트에 있는 서로 다른 두 프로세스의 텍스트를 붙여넣을 수도 없으므로 vim서로 다른 호스트에 있는 프로세스의 텍스트도 붙여넣을 수 없습니다.

짧은 텍스트의 경우 한 터미널 창의 vim에서 호스트의 클립보드로 텍스트를 복사한 다음 호스트의 클립보드에서 다른 터미널 창의 vim으로 붙여넣을 수 있습니다. 터미널 창을 사용하지 않는 경우에도 tmux유사한 효과를 사용할 수 있습니다. 내부의 ssh 세션 emacs도 작동하지만 emacs를 사용하려면 vim에게 묻지 마십시오.

더 긴 텍스트의 경우 비슷한 프로그램을 사용하여 scp원격 호스트에서 복사한 다음 로컬에서 파일을 사용합니다.

답변3

를 사용하면 ssh -Y <hostname>SSH 세션이 로컬 컴퓨터의 클립보드에 액세스할 수 있습니다. 원격 컴퓨터에서 X11Forwarding이 기능이 활성화되어 있는지 확인하십시오./etc/ssh/sshd_config

두 시스템 모두에서 .vimrc에 추가합니다.

 set clipboard=unnamedplus

기본적으로 클립보드를 사용한 복사 작업이 허용됩니다. 이제 일반 복사 및 붙여넣기가 다른 컴퓨터에서 작동합니다. 또는 "+y지정된 클립보드 레지스터를 사용하여 동일한 효과를 얻을 수도 있습니다.

원격 vim 지원 이 없기 때문에 귀하의 경우 답변이 작동하지 않을 것 같지만 clipboardvim을 사용하고 컴퓨터간에 텍스트를 복사하는 방법을 검색할 때 Google이 표시되므로 완전성을 위해 이 답변을 추가하고 싶었습니다. 다른 사람들에게 유용해지세요.

관련 정보