将远程vps与ssh连接。
ssh user@vps_ip用vim编辑远程vps中的文件并编写一行
some text在正常模式下,按yy,如何将some text粘贴到本地的‘vim?
反之亦然。
1.葡萄的桂味
在本地vim中,其os是debian:
vim --version | grep clipboard
+clipboard +job +path_extra +user_commands
+eval +mouse_dec +statusline +xterm_clipboard在远程vim中,其操作系统是debian:
vim --version | grep clipboard
-clipboard +iconv +path_extra -toolbar
+eval +mouse_dec +startuptime -xterm_clipboard无法在远程vim中安装vim。
sudo yum install -y vim-gtk
No package vim-gtk available.2.本地系统是否有X服务器?
是
3.您是否在本地系统上使用GUI登录会话?
本地操作系统中的桌面是LXDE,输入GUI登录会话。
发布于 2018-09-27 01:39:28
您可以通过运行vim scp://user@vps_ipi/remote_file打开远程文件,然后使用:e local_file打开本地文件,然后可以使用:bn在缓冲区之间切换,并使用yy和p命令在缓冲区之间复制和粘贴。
我做了一个打开远程脚本的测试,然后用ggVGy复制它的所有内容,切换缓冲区:bn并粘贴到P。
发布于 2018-09-23 11:31:21
您甚至不能在同一台主机上粘贴来自两个不同vim进程的文本,因此不能从不同主机上的进程粘贴文本。
您可以做的是,对于短文本,将文本从一个终端窗口中的vim复制到主机的剪贴板,并将其从主机的剪贴板粘贴到另一个终端窗口的vim中。如果不使用终端窗口,也可以使用tmux实现类似的效果。emacs内部的ssh会话也可以工作,但是如果您想使用emacs,就不会询问vim。
对于较长的文本,我会使用scp之类的porgram将它们复制到/从远程主机复制,然后在本地使用该文件。
发布于 2019-07-11 08:00:25
使用ssh -Y <hostname>,它将允许ssh会话访问本地机器的剪贴板。确保在远程计算机上在X11Forwarding中启用了/etc/ssh/sshd_config。
在这两台机器上添加到.vimrc:
set clipboard=unnamedplus这将允许在默认情况下使用剪贴板进行yank操作。现在,正常的yank和粘贴将在不同的机器上工作。或者,您也可以使用"+y指定剪贴板寄存器以达到同样的效果。
我想这个答案在您的情况下是行不通的,因为您在远程vim中没有clipboard支持,但是我想为完整添加这个答案,因为谷歌在搜索如何使用vim在机器之间复制文本时就会发现这个问题,这可能对其他人很有用。
https://unix.stackexchange.com/questions/470851
复制相似问题