使用GNU Screen时,我们可以使用以下命令使用回滚缓冲区(也称为“复制模式”)Ctrl+a+[
。
在这里,我们可以通过选择文本并再次按将文本复制到复制缓冲区。space
space
有什么方法可以将文本从屏幕复制缓冲区复制到X剪贴板吗?
就我而言,我将Ubuntu 12.04与gnome和Xorg结合使用。
Answers:
cat
命令(^C
也许带有),因此在转储复制缓冲区时该命令不接受输入?如果我们能解决这个问题,也许您可以删除您的弃权票。
DISPLAY
环境变量设置为它。大多数终端仿真器都会对此进行设置ssh -X
。由于未设置,因此xsel在接受输入之前会失败,因此管道将退出,并且屏幕缓冲区中的其余“按键”都将进入您的shell。
cat
在cat | xsel -b
是连接一个可爱的方式xsel
'输入s到一个配管(而不是一个tty
)和触发xsel
的‘输入’模式; 但xsel
具有-i
用于显式触发输入模式的标志。因此xsel -bi
可能更可取cat | xsel -b
。
有一种更简单,更省力的方法来执行此操作。在屏幕的.rc文件中,添加以下行:
bindkey -m ' ' eval 'stuff \040' 'writebuf' 'exec sh -c "/usr/bin/pbcopy < /tmp/screen-exchange"'
如何使用复制功能:
screen -c path/to/screen/config.rc
编辑:在没有pbcopy但带有clipit的Linux上,您可以使用以下方法:
bindkey -m''eval'材料\ 040''writebuf''exec sh -c“ / bin / cat / tmp / screen-exchange | / bin / clipit”'
/bid/clipit
为,/usr/bin/cliptit
并且必须安装libcanberra-gtk-module
。
该答案仅适用于最终目标是立即粘贴复制的缓冲区内容的情况。
最简单的方法是将屏幕分为两个区域。您可以点击CTRL+,a然后点击|“这不是i。这是键盘上的PIPE标志'
点击CTRL+,a然后TAB切换到第二个区域,CTRL+,a然后在第二个区域c中创建一个新会话。
如果要从nano复制并粘贴到终端,请在nano的左侧区域中打开文件,按CTRL+a然后ESC,滚动到复制位置的起点并点击SPACE,通过滚动到终点选择文本并点击SPACE再次标记副本。
现在,您所要做的就是按CTRL+a然后TAB切换到右侧的区域并按CTRL+a然后]。
您的文本将被写到命令行。请注意,如果您想直接写入文件,也可以检查硬拷贝选项。
终于在今天,我找到了使用鼠标的解决方案:
按住Ctrl并右键单击用鼠标。显示复制/粘贴上下文菜单。
某些屏幕位于https://michalzuber.wordpress.com/2015/01/28/gnu-screen-copy-paste-with-mouse/
cat | xsel -b
当我从外壳运行时,执行了我的全部历史记录。