登录到 ssh 会话,然后自动查找并访问现有的屏幕会话?

登录到 ssh 会话,然后自动查找并访问现有的屏幕会话?

我想使用 ssh 连接到服务器,登录后我想自动执行

screen -R

我的脚本如下所示:

sshpass -p password ssh -t [email protected] 'screen -R; bash -l'

重要的是,我希望能够从外部控制登录后执行哪些命令。否则我很可能只添加“.bashrc”或一些相同的文件。

答案1

ssh -tt user@server 'screen -ls 2>/dev/null | grep -i detached && screen -r || echo "No screen detached sessions found"'

只要您分离了一个屏幕,这就会起作用。

答案2

检查你的 ssh 配置?例如:

grep PermitTTY /etc/ssh/config
grep PermitTTY ~/.ssh/config

如果它们没有设置为“是”,也许这就是您的问题?

PS:有什么理由不使用 tmux 而不是 screen?只是好奇。

相关内容