1

我使用 bash 脚本设置了 ssh 隧道,并将 ssh 隧道配置为共享持久连接隧道。

但是,在我的脚本结束时,我设置了它以对隧道调用关闭命令并删除 .ssh/config 文件,这样它就不会保持打开状态,后续由 a 手动启动的 ssh 隧道也不会保持打开状态。用户。

问题是......在调用关闭命令并删除之前,如果有人 ctrl+c 脚本或由于某种原因在脚本中间崩溃,那么确保隧道关闭的最佳方法是什么?配置文件?我打算向控制主机添加超时,但我无法根据我在 ssh_config 手册页中的读数确定我需要使用什么。

4

1 回答 1

1

尝试使用陷阱

#!/bin/bash

on_sigint(){
    echo this function is called on ctrl+c        
}

trap "on_sigint" SIGINT SIGTERM
echo start

# Do what you want
...

echo stop
于 2013-04-12T13:30:44.710 回答