我可以让ssh告诉我哪个控制文件将用于复用?

我在~/.ssh/config中使用以下选项来启用连接复用:

 ControlMaster auto ControlPath ~/.ssh/control/master-%r@%h:%p 

但是,这有一个恼人的问题,即连接到特定服务器的第一个shell必须是最后一个断开的连接,因为它是所有其他连接正在使用的主连接。 所以,如果你注销主,它似乎只是挂起。 为了解决这个问题,我想用一个脚本封装ssh来检查控制主文件是否存在,如果没有,在后台启动一个主ssh进程。 然后,它会启动一个奴隶SSH会话。

为了做到这一点,我的脚本将不得不确定ssh将使用的控制文件的path。 这将需要parsingssh命令行选项和configuration文件,并实现确定ControlPath的逻辑。 有什么办法可以问一下ssh使用什么path,所以我可以检查一下吗?

刚刚find它。 ssh -O check HOST