Questions tagged «gnu-screen»

屏幕(GNU Screen)是一个全屏窗口管理器,它在多个进程(通常是交互式外壳程序)之间多路复用物理终端。对于计算机监视器,请参阅标签/ monitors。

1
扩展gnu屏幕的可滚动内容?
在screen终端环境中,我通常使用Ctrl- 进入复印模式aEsc。但是,可滚动输出通常太短,无法查看所需的信息。 如何修改以延长此输出的长度?

1
通过bash历史记录访​​问时,屏幕会切断长命令的开头
我正在OS X Lion中使用bash和screen的默认版本。 当我处于屏幕会话中时,我会在bash历史记录中向后滚动,然后出现一个足以包装的命令。 我可能首先输入一些命令: selassid@tem02:~$ ls ljmix/fiftyfifty_softsphere/T0.350/r2.43/0.565421311859c0.1 83279836214c0.144847759343/ 上面的代码可以正确包装,但是如果我按bash的历史记录来访问它,则控制台仅显示: 83279836214c0.144847759343/ 因此,提示和命令的第一行都丢失了,这使得编辑变得很困难。如果我滚动回到第一行,它会出现,但是会覆盖输出的最后一行。当我执行命令时,第一行的其余部分将显示,并且一切看起来都与预期的一样: selassid@tem02:~$ ls ljmix/fiftyfifty_softsphere/T0.350/r2.43/0.565421311859c0.1 83279836214c0.144847759343/ total 1792 ... selassid@tem02:~$ 更奇怪的是,如果使用历史记录来访问长命令,但我还没有执行它,则使用任何C-a屏幕命令,例如切换到另一个窗口然后再返回,或者单击当前终端窗口中的回到它,history命令现在再次正确显示。 我的,PS1='\u@\h:\w$ '所以这里没有什么奇怪的。 使用历史记录时,是否可以正确显示整个命令?我尝试过使用屏幕环绕设置,但是它们只会使情况变得更糟。 stty -a 显示: speed 9600 baud; 46 rows; 80 columns; lflags: icanon isig iexten echo echoe -echok echoke -echonl echoctl -echoprt -altwerase -noflsh -tostop -flusho pendin …
9 bash  osx  gnu-screen 


2
屏幕状态栏多行
我正在使用打开了几个选项卡的屏幕来将它们之间的项目分开。但是,当我打开太多的选项卡时,它们只是显示在屏幕外,而我在“屏幕状态栏”中再也看不到它们。我仍然可以切换到它们,但是在我的窗口列表中看不到它们。如何使我的“屏幕状态栏”在必要时扩展为两行?我.screenrc从一个朋友那里得到了一个开始,这让我感到很满意,但我想对其进行自定义以提供此选项。

2
在GNU屏幕上强制显示标题
默认情况下,屏幕会话的标题是输入的最后一个命令的名称,这对我来说很好,但是在某些情况下,我想更改它。我知道命令Ctrl- A A,但是它只会更改标题直到下一个命令为止,并且我希望它保留在那里直到我决定其他方式为止。 编辑: 这是preexec我在我发现的功能.zshrc if [[ "$TERM" == "screen" ]]; then local CMD=${1[(wr)^(*=*|sudo|-*)]} echo -n "\ek$CMD\e\\" fi

2
连接到byobu屏幕会话并执行命令?
在构建脚本时,我正在尝试如何尽可能地自动化。更有趣的挑战之一是连接到byobu屏幕会话并执行命令。 因此,我从一个明显的地方开始,查看有多少个屏幕会话(游戏在byobu中有3个窗口,lordquackstar有2个窗口。用户位于不同的腻子实例中) game@quackgame:~$ screen -ls There is a screen on: 2019.byobu (01/05/2011 05:10:04 PM) (Attached) 1 Socket in /var/run/screen/S-game. 那里只有一个,所以我检查了系统 lordquackstar@quackgame:/home/game$ sudo ls -lAR /var/run/screen/ /var/run/screen/: total 0 drwx------ 2 game users 100 2011-01-06 09:18 S-game drwx------ 2 lordquackstar lordquackstar 100 2011-01-06 09:17 S-lordquackstar /var/run/screen/S-game: total 4 prwx------ 1 game …


3
如何判断终端会话是否在屏幕上运行
在运行bash脚本时,我想知道它是否在内运行screen。这可能吗? 我想要这样做,以便.bashrc可以根据会话是否在屏幕内启动来设置命令提示符的颜色。 我的回答一经发现,便找到了此链接:如何知道我是否在屏幕上?

1
屏幕实际上是如何工作的?
我刚刚了解到screen,它看起来很棒。 一些问题: 它们实际上如何工作? 为什么即使发生了不好的情况,下载/进程也不会在屏幕上中断?

1
可以为每个(回车)添加nl(换行符)
编辑:我有数据采集硬件,可以通过UART将串行数据发送到FTDI(串行到USB)设备。FTDI已插入USB端口,其端口名称为/dev/ttyUSB0。本设备以以下格式输出数据: data line 1\r data line 2\r ... data line n\r 我尝试使用屏幕通过输入以下命令来查看数据: screen /dev/ttyUSB0 115200 屏幕开始在一行上显示所有数据,因此我看到一行闪烁。如何在每行末尾添加换行符,以使屏幕开始分隔行? 原始:我正在使用一个串行设备,该设备仅以回车符来终止行。是否可以配置屏幕为每个cr字符添加一个nl(换行符)字符? 谢谢... 编辑:无法使它与屏幕一起使用,picocom效果很好。我使用以下命令picocom -b 115200 --imap crcrlf /dev/ttyUSB0。

3
如何恢复无法分离的屏幕?
我使用屏幕屏幕视觉控制台。要分离屏幕,我需要先按Ctrl+,A然后D再关闭会话但又不分离它。它出现(Attached)在screen -list: eduard@eduard-X:~$ screen -list There are screens on: 4561.pts-46.eduard-X (30.03.2015 14:48:51) (Attached) 4547.pts-46.eduard-X (30.03.2015 14:48:33) (Detached) 4329.pts-41.eduard-X (30.03.2015 14:46:28) (Attached) 3995.pts-30.eduard-X (30.03.2015 14:30:01) (Detached) 如果我尝试还原它,屏幕将显示没有屏幕可恢复: eduard@eduard-X:~$ screen -r 4329 There is a screen on: 4329.pts-41.eduard-X (30.03.2015 14:46:28) (Attached) There is no screen to be resumed matching 4329. 我还能恢复未正确拆下的屏幕吗?

2
找出萤幕编号
我想使用PHP使用SSH启动程序,效果很好,但是现在我想使用PHP终止屏幕,但我唯一知道的是屏幕名称。如何自动找到屏幕ID?
8 ubuntu  ssh  gnu-screen  php 

1
让屏幕指示整个状态栏都有铃声/警报
我想知道是否有人知道在屏幕会话中出现响铃警报时可以在屏幕上更改整个状态栏的方法。 在公司内部,我们使用jabber,因为90%的一天我都在屏幕环境中工作,所以我使用基于命令行的聊天客户端。当我们公司的某人向我发送消息时,我不会总是立即看到该警报。现在,它会突出显示会话名称,但是有时候我很难注意到。 对于它的价值,我在聊天客户端中使用mcabber。我知道除了发送新消息的警铃外,您还可以运行命令-如果这样做可以帮助完成这项工作。 这是我当前的.screenrc startup_message off screen screen -t jabber mcabber screen -t root screen -t misc bind ! select 11 bind @ select 12 bind \# select 13 bind $ select 14 bind % select 15 bind \^ select 16 bind & select 17 bind * select 18 bind …

1
如何根据登录用户更改屏幕的硬状态颜色?
我已经有一段时间没有编辑/创建.screenrc文件了,但这是我目前正在使用的文件: # Turn off the screen startup message startup_message off # Define format of bottom navigation/status/date/etc. line hardstatus alwayslastline "%{yk}[ %H ] %-Lw%50>%{gk}(%{-}%n-%t%{gk})%{-}%+Lw%< %=%{yk}[ %c %d.%m.%Y ]" # Increase scrollback buffer to 30000 lines defscrollback 30000 老实说,我不记得我的hardstatus行中的所有内容代表什么,但是我想弄清楚如何根据登录的用户更改主机名颜色。这是否可能?现在,当我以任何用户身份登录时,主机名都是黄色。但如果我是root,我希望它是红色的。这可以在我的.bashrc文件中更改吗?我在.bashrc中拥有此功能,可以将新的屏幕窗口名称更改为我连接到的服务器的主机名: # Set screen window title case "$TERM" in screen) PROMPT_COMMAND='echo -ne "\033k$HOSTNAME\033\\"' ;; …

1
在终端的第一行显示屏幕字幕
当我启动一个新的终端时,提示在第一行。工作了一会儿(或运行产生一些输出的命令)后,提示在最后一行。除非我按Ctrl- l,运行clear或reset类似命令,否则它将在剩下的会话中保留下来。 为了获得某种程度的连续性,我使用screen了一个技巧来在标题中显示会话名称(我在中的两个screen命令中使用了最后一个.screenrc)。 为了避免由于工作区域混乱而造成的认知开销,我希望此标题显示在终端的顶部。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.