Ron*_*gan 25 linux ssh gnu-screen
我一直在阅读有关如何在ssh访问远程服务器时自动启动屏幕的信息。我想要一个简单的单线添加到我的.bash_profile,screen当我进入时开始ssh,并且在我分离屏幕时不退出我的远程连接。
我一直在寻找到exec screen和几乎每一个组合-d,-r,-D和-R和无法弄清楚,我需要什么标志。
理想情况下,我会ssh whatever以新的方式输入并登录到服务器,screen或者它可以重新连接旧屏幕,我想知道如何同时进行以查看我更喜欢哪个。然后我可以输入Ctrl ad或Ctrl d让它带我回到ssh该服务器的正常登录(在那里你会看到motd)。从那里我可以screen -r回到我想要的任何屏幕,或者Ctrl d再次点击退出。
小智 19
一个简单的screen -R应该可以解决问题。
为了验证这一点,我screen -R在远程服务器上添加了我的 .bash_profile,登录,从屏幕上分离,然后回到远程服务器上的正常 shell 提示。也用 .bashrc 验证。随后的登录产生了预期的结果(重新附加到屏幕会话)。
小智 15
在启动新窗口或屏幕会话时,我遇到了使用某些解决方案创建的 40 个级联屏幕会话的问题。如果不存在级联屏幕,我能够消除级联屏幕并创建一个新会话:
if [ -z "$STY" ]; then screen -R; fi
Run Code Online (Sandbox Code Playgroud)
它测试您是否在屏幕会话中,screen -R如果您不在,则运行。没有测试你会得到“从屏幕内部连接?” 每次创建新的屏幕窗口时都会从屏幕发出警告。
如果我了解您的需求,您应该尝试:
if $(screen -ls | grep -q pts); then screen -x; else screen -R; fi
它将只创建一个屏幕会话,否则它将以多窗口方式重新连接到现有会话(即使您有多个 ssh 会话,您最终也会进入同一个屏幕会话)
| 归档时间: |
|
| 查看次数: |
23060 次 |
| 最近记录: |