Насколько я знаю, сеансы хранятся в реестре (HKEY_CURRENT_USER\Software\SimonTatham\PuTTY\Sessions
).По крайней мере, это так в моей среде здесь.Например, вы можете использовать пакетный скрипт для доступа к именам сеансов.
@echo OFF
setlocal ENABLEEXTENSIONS
set KEY_NAME="HKEY_CURRENT_USER\Software\SimonTatham\PuTTY\Sessions"
FOR /F "usebackq" %%A IN (`REG QUERY %KEY_NAME% 2^>nul`) DO (
FOR /F "tokens=6 delims=\" %%B IN ("%%A") DO (
@echo ON
"C:\Program Files\PuTTY\PLINK.EXE" -load %%B -l my_user -pw my_password ps -ef
@echo OFF
)
)
Я использовал tokens=6
, чтобы получить только последнюю часть пути (%%A
).Мне не очень нравится пакетный скриптинг, поэтому я даже не знаю, нужен ли вам setlocal ENABLEEXTENSION
.
Если вы знаете имена ваших сеансов, вы также можете просто использовать следующую команду:
FOR %%A IN (session1_name session2_name session3_name) DO "C:\Program Files\PuTTY\PLINK.EXE" -load %%A -l my_user -pw my_password ps -ef
Надеюсь, это поможет, даже если вашему посту почти год.Комментарии по улучшению кода приветствуются.