1

bash スクリプトを使用して ssh トンネルをセットアップしましたが、ssh トンネルは共有永続接続トンネルとして構成されています。

ただし、スクリプトの最後で、トンネルに対して close コマンドを呼び出し、.ssh/config ファイルを削除して、開いたままにならないようにセットアップしました。ユーザー。

質問はこれです...誰かがスクリプトを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 に答える