我知道如何启动一个screen,以及如何列出不同的屏幕:
screen -ls
Run Code Online (Sandbox Code Playgroud)
或附上:
There are screens on:
2477.pts-0.server1 (Detached)
2522.pts-0.server1 (Detached)
2 Sockets in /var/run/screen/S-root.
$ screen -r 2477.pts-0.server1
Run Code Online (Sandbox Code Playgroud)
但是从屏幕会话中分离并保持运行的组合键是什么?
我正在尝试终止屏幕会话。我注意到许多其他相关问题,但这些答案都不适用于我。我正在尝试终止以下会话:
screen -ls
There is a screen on:
23520.pts-6.porkypig (09/30/2013 02:49:47 PM) (Detached)
1 Socket in /var/run/screen/S-root.
screen -r 23520.pts-6.porkypig
Run Code Online (Sandbox Code Playgroud)
现在我在会议中。根据文档:
http://www.gnu.org/software/screen/manual/screen.html#Quit
我应该按“控制 a”,然后按“控制\”。我这样做,然后什么也没有发生。
另一种解决方案是按Ctrl+a并键入 :quit。然而,它再次没有做任何事情。事实上,按control+ a,除了一条消息“没有其他窗口”之外,绝对没有任何反应
我有一个程序在屏幕下运行。事实上,当我从会话中分离并检查 netstat 时,我可以看到程序仍在运行(这正是我想要的):
udp 0 0 127.0.0.1:1720 0.0.0.0:* 3759/ruby
Run Code Online (Sandbox Code Playgroud)
现在我想重新连接到运行该进程的会话。所以我启动了一个新终端,然后输入 screen -r
$ screen -r
There are several suitable screens on:
5169.pts-2.teamviggy (05/31/2013 09:30:28 PM) (Detached)
4872.pts-2.teamviggy (05/31/2013 09:25:30 PM) (Detached)
4572.pts-2.teamviggy (05/31/2013 09:07:17 PM) (Detached)
4073.pts-2.teamviggy (05/31/2013 08:50:54 PM) (Detached)
3600.pts-2.teamviggy (05/31/2013 08:40:14 PM) (Detached)
Type "screen [-d] -r [pid.]tty.host" to resume one of them.
Run Code Online (Sandbox Code Playgroud)
但是我怎么知道哪个会话是运行我创建的那个进程的呢?
现在我遇到的其中一份文件说:
“当你使用一个窗口时,输入 Ca A 给它一个名字。这个名字将用于窗口列表中,当你开始使用很多窗口时,它会帮助你记住你在每个窗口中所做的事情。 ”
问题是当我进入一个新的屏幕会话时,我尝试按 control+a A 并且没有任何反应。
我经常使用 GNU Screen。但是,我一直试图弄清楚当我 ssh-ing 时是否有办法让 X11 应用程序在屏幕上转发(这是一个词吗?)。目前,如果我尝试通过屏幕运行“gedit”,它会在我的“服务器”计算机上打开,而不是在我的客户端上打开。如果我在屏幕外做同样的事情,那么一切都很好。但是我也希望当我使用屏幕时一切都很好!
谢谢!
PS:我在谷歌上搜索了这个问题,我看到提到 xmove,但我似乎无法在我的 ubuntu 上找到包含 xmove 的包。(Ubuntu 10.10)
我想弄清楚如何编写一个脚本,该脚本将在系统启动时在 GNU Screen 会话中启动程序。我正在尝试这个:
#!/bin/bash
screen -S test -d -m -X $HOME/folder/folder/.program \
screen -S test2 -d -m -X $HOME/folder/folder/.program2 \
Run Code Online (Sandbox Code Playgroud)
但是由于会话已经分离而无法执行命令?我唯一需要的是在屏幕会话中运行命令并立即分离此会话。
感谢您的回答,但现在我面临另一个问题。在我为“程序和程序 2”放置一些变量后,脚本停止工作。像这样的东西:
#!/bin/bash
screen -S test -d -m $HOME/folder/folder/.program -f config.cfg
Run Code Online (Sandbox Code Playgroud)
出于某种原因,“-f config.cfg”被忽略了。我也试图引用命令并且也没有帮助。
我运行 16.04,systemd现在tmux在用户断开连接时终止(更改摘要)。
有没有办法用230运行tmux或screen(或任何类似的程序)systemd?我阅读了所有关于行为的利弊的激烈讨论,但没有提出解决方案。
(我也看到了 229 中的行为)
我最近在 ssh 进入的机器上安装了 GNU screen。如何让 GNU 屏幕使用 256 色?
到目前为止,我已经尝试将以下内容添加到我的.screenrc:
term screen-256color
Run Code Online (Sandbox Code Playgroud)
和
attrcolor b ".I" # allow bold colors - necessary for some reason
termcapinfo xterm 'Co#256:AB=\E[48;5;%dm:AF=\E[38;5;%dm' # tell screen how to set colors. AB = background, AF=foreground
defbce on # use current bg color for erased chars
Run Code Online (Sandbox Code Playgroud)
但都没有奏效。
在登录 shell 中,在启动 screen 之前,当我运行这个打印 256 色的脚本时,我得到了正常的输出。当我使用命令时,tput colors我得到了输出8。
当我启动 screen 并运行脚本时,我得到 16 种颜色映射到 256 种颜色 - 有大块纯色。当我运行时,tput colors我得到 …
我在screen登录ssh到我的服务器后使用。到目前为止,我手动设置了屏幕窗口中的拆分并手动运行命令,如下面的屏幕截图所示:
tail -n 1 -f /home/server/log/access.log。htop有什么办法可以通过命令/脚本来完成,所以我不必每次都手动重做?
我想将一些文本从屏幕复制到剪贴板。我知道如何在屏幕中进入复制和粘贴模式,但我希望该文本进入我的剪贴板,以便我可以将其粘贴到浏览器上,例如。
我该怎么做呢?谢谢!
我正在运行Ubuntu Server并希望拥有多个终端。屏幕工作正常,但......它不是用户友好的。我的意思是..按下Ctrl+ 后,A您不会收到处于命令模式的通知,为了显示您必须输入的终端,"这根本不友好(在我的键盘上是Shift+ 1),依此类推..
我看着 byobu 但它似乎被窃听了:cpu 状态线不断向上增加并最终覆盖我的屏幕......但总的来说我仍然不太喜欢它。
我正在寻找带有 nano 图形的东西……屏幕底部充满了说明/状态,上部当然是我当前的终端。
这样的东西存在吗?或者,您能帮我修复 byobu 错误吗?