用于创建后台SSH连接的Shell脚本(如果不存在)

一个非常类似的问题到 this,但在我的情况下有一个额外的细节.

基本上我使用ControlMaster来加速SSH连接.所以我正在使用:

CurrentUser=$(whoami)
session=$(ps -el | grep $(id -u) |sed -e 's/sshd//g'| grep ssh)
if [ "$session" = "" ]
then
        ssh -TMNf synchro@129.130.155.30 &
fi

在这代码之后,我有一个命令. ssh命令的目的只是在后台运行,以便保持一个打开的套接字以便更快地连接(如果短时间内没有呼叫,那么它会由于不活动而超时和关闭.)

问题是这个脚本没有关闭并返回给调用者.它变成<已解散>进程,直到我手动终止创建的ssh会话才返回.如何让脚本返回调用者并在后台运行创建的ssh?

编辑:我希望创建的ssh会话在脚本结束后保持不变,以保持套接字打开,以便在此之后更快地与rsync命令建立连接.使用开放式插座,我将从3-4秒传输到毫秒

你想使用 nohup命令吗?

相关文章

用的openwrt路由器,家里宽带申请了动态公网ip,为了方便把2...
#!/bin/bashcommand1&command2&wait从Shell脚本并行...
1.先查出MAMP下面集成的PHP版本cd/Applications/MAMP/bin/ph...
1、先输入locale-a,查看一下现在已安装的语言2、若不存在如...
BashPerlTclsyntaxdiff1.进制数表示Languagebinaryoctalhexa...
正常安装了k8s后,使用kubect工具后接的命令不能直接tab补全...