Я пытаюсь создать пакетный файл Windows, который запускает putty/plink с переадресацией портов и ничего больше. Часть Windows уже готова:
start plink.exe -ssh -i key.ppk -L 1234:localhost:80 sampleUser@192.168.0.1
Поскольку я не хочу разрешать выполнение других команд после аутентификации, я использую ForceCommand
с объявлением Match User
:
Match User sampleUser
ForceCommand echo 'Success! Close this window to log out.'
Проблема в том, что при запуске моего пакетного файла правильно запускается шпаклевка, но он сразу же закрывается после выполнения моего указанного текста.
Моя идея состоит в том, чтобы использовать что-то вроде этого:
ForceCommand echo 'Success! Close this window to log out.' && waitTillControlC
Таким образом, putty/SSH должен поддерживать соединение и не выходить из моего перенаправления портов.
Я думал о командах, таких как yes
, ping
или read
, но они
- спамят мое окно терминала
- фактически делают вещи / генерируют ненужную загрузку процессора
- может неожиданно закрыться, если кто-то нажмет ввод
Есть ли команда, которая ничего не будет делать вечно, пока кто-нибудь не завершит ее нажатием Ctrl+C или не закроет SSH-соединение, закрыв окно замазки?
Что я должен использовать для waitTillControlC
?