要将 Control+C 发送到分离的屏幕会话,我可以执行其他地方演示的操作 :
screen -S NameOfSession -p 0 -X stuff $'\003
Run Code Online (Sandbox Code Playgroud)
或者
screen -S NameOfSession -X -p 0 stuff "^C"
Run Code Online (Sandbox Code Playgroud)
我的问题是关于命令中的“东西”。screen 的手册页没有提到它,而且它似乎也不是安装在我的 Linux 发行版中的应用程序。
有人可以详细说明一下“东西”到底是什么吗?
如何在 Linux 控制台的 GNU 屏幕中使用鼠标?我希望这必须通过 gpm 进行,但默认情况下似乎不会发生这种情况,即使 Curses 库确实链接到 libgpm。(这可能与 screen 的 termcap 传承有关...)
这与为什么我的 LD_LIBRARY_PATH 未设置启动终端有关?,但一组不同的症状。
首先,/usr/bin/screen根据另一个问题是 setuid 。其次,这个系统上的默认shell是/bin/tcsh由于各种历史原因,我们不允许chsh到/bin/bash,所以我通常在登录后立即手动运行bash。第三,我几乎总是使用 screen,但我希望在 screen 中使用 ctrl-a ctrl-c 来创建一个新的 bash“选项卡”,所以我总是先调用 bash。
那是:
{~} $ echo $SHELL
/bin/tcsh
{~} $ bash
[~] echo $SHELL
/bin/bash
[~] screen -U
[~]
Run Code Online (Sandbox Code Playgroud)
...当重新连接时:
{~} $ echo $SHELL
/bin/tcsh
{~} $ screen -dUr
[~] echo $SHELL
/bin/bash
[~]
Run Code Online (Sandbox Code Playgroud)
但是,我$LD_LIBRARY_PATH在 tcsh 中,在 bash 中,但是一旦我运行 screen 就为空;如果我只是从 tcsh 运行屏幕,它仍然存在,但是当我在屏幕中使用 ctrl-a ctrl-c 时,我会得到新的 tcsh“标签”。
有任何想法吗?
是否有用于 Windows CMD.EXE 的终端多路复用器(即 GNU Screen)之类的东西,或者就此而言,有什么我可以用来在 Windows XP 上运行纯文本程序(例如非诅咒 python 脚本)的东西或 Vista 只能通过使用任务管理器、类似程序或通过观察脚本生成的任何网络流量来检测?
我正在使用screen,并且我的 中有几个别名~/.bash_profile,例如python=python-2.6. 但是由于某些原因,当我在screen. 我怎样才能让它们工作?
当我在普通 bash 中退出 'less' 时,它会清除 'less' 显示的先前内容并再次显示 bash 内容。这是默认行为,也是我想要的。
但是,当我在“screen”会话中使用“less”时(在 screen 会话中仍然是 bash),退出后它不会删除“less”显示的内容并且 bash 的内容消失了(仍然有一个新的 bash 命令行提示)。
即使我在“屏幕”会话中使用它,我怎样才能让它在退出后不清除它的显示?
在 GNU 屏幕中,我可以在命令之间按住Ctrl+ a。
例如,要更改窗口,我一直按住Ctrl+a并一直按n而不松开Ctrl+ a。
这在 tmux 中可行吗?目前我需要在命令之间释放Ctrl+ a。
(顺便说一句,我将默认前缀从Ctrl+更改b为Ctrl+ a)
通过“Ca[?search_string”进行反向文本搜索时,
我必须不断按“n”来找出“search_string”的出现次数。
GNU 屏幕中是否有可以高亮显示搜索文本的配置,
类似于 vim 的“:set hlsearch”?
我正在尝试使用串行接口(运行 Scientific Linux 6.1)连接到 Khepera 机器人,我使用该命令screen /dev/ttyS0进行通信,这工作正常,但后来我想关闭它并使用 MATLAB,但我发现无法关闭该会话,所以我只是在终端窗口运行屏幕上点击了 X。
现在我的 ttyS0 端口无法打开。MATLAB 和 screen 都说它无法打开该端口。
如何重置 ttyS0 端口?我的意思是一种选择是重新启动计算机。但是如何在不重新启动的情况下做到这一点?
终止串行通信的正确方法是什么?
另外,下面的命令有什么作用?我用谷歌找到它并运行它,但什么也没发生。它对我需要修复的事情做了什么坏事吗?
/sbin/agetty -L -f /etc/issueserial 9600 ttyS0 vt100
Run Code Online (Sandbox Code Playgroud) 我喜欢将屏幕会话设置为并排的两个窗口(Ctrl+A | 组合键)。问题是有时我需要运行一个服务器,在我的一个屏幕会话的前台启动一个屏幕会话。所以现在我在另一个屏幕会话中有一个屏幕会话。当我尝试分离内屏 (Ctrl+A d) 时,它会分离外屏。
是否有任何解决方案可以在外屏幕会话中仅分离屏幕?
谢谢,马克斯
gnu-screen ×10
linux ×5
bash ×2
alias ×1
command-line ×1
console ×1
less ×1
mouse ×1
python ×1
serial ×1
terminal ×1
tmux ×1
ubuntu ×1
windows-xp ×1