В Cygwin я хочу, чтобы сценарий Bash:
- Создайте SSH-туннель к удаленному серверу.
- Выполните некоторую работу локально, используя туннель.
- Затем закройте туннель.
Часть выключения озадачила меня.
В настоящее время у меня есть хромое решение. В одной оболочке я запускаю следующее, чтобы создать туннель:
# 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)
Наконец, когда я закончу, я закрываю первое окно оболочки, чтобы убить туннель.
Я бы хотел сделать все это одним скриптом, например:
# Create tunnel
# Do work
# Kill tunnel
Как мне отслеживать процесс туннеля, чтобы знать, какой из них убить?