Cygwinでは、Bashスクリプトで以下を実行します。
- リモートサーバーへのSSHトンネルを作成します。
- トンネルを使用するローカルでいくつかの作業を行います。
- 次に、トンネルをシャットダウンします。
シャットダウン部分は困惑しています。
現在、私は不十分な解決策を持っています。1つのシェルで次のコマンドを実行してトンネルを作成します。
# Create the tunnel - this works! It runs forever, until the shell is quit.
ssh -nNT -L 50000:localhost:3306 jm@sampledomain.com
次に、別のシェルウィンドウで作業を行います。
# Do some MySQL stuff over local port 50000 (which goes to remote port 3306)
最後に、完了したら、最初のシェルウィンドウを閉じてトンネルを終了します。
これを次のような1つのスクリプトで実行したいと思います。
# Create tunnel
# Do work
# Kill tunnel
どのようにしてトンネルプロセスを追跡すれば、どのプロセスを強制終了すればよいかわかりますか?