我最近需要从打开的文件中复制 X 行,vim
然后将它们粘贴到在不同屏幕会话(和不同服务器)中打开的另一个文件中。
所以在屏幕 #1 上我跑进了vim
:
:15,20y
在屏幕#2上,我尝试p
粘贴这些行,但我不能,因为寄存器是空的(说实话,我期待着,但我只是想尝试一下)。
我最终设法将这些行放到正确的位置,但我想知道是否可以在屏幕会话之间复制粘贴数据。
答案1
您可以使用 screen 命令的复制/粘贴功能:
首先,您选择要在屏幕 #1 上复制的文本:
C-a esc
使用上面的命令,您将处于窗口编辑模式,这允许您将当前窗口及其历史记录中的文本复制到粘贴缓冲区中。您可以使用箭头移动并使用空格键选择文本。
进入屏幕#2,输入以下内容粘贴:
C-a ]
有关 screen 命令的更多参考,请参阅联机帮助页:
$ man screen
答案2
一种解决方法是使用shift鼠标拖动,然后ctrl c结合缩小(重复 ctrl- )和鼠标拖动。这适用于最多大约 130 行。shiftctrlv-