1
我想在windows下编写脚本来控制putty。 假设我有一个名为mySession的会话。我可以使用以下命令发送它:使用plink获取putty中保存会话的列表
plink -load mySession -l myUserName -pw myPassowrd ps -ef
现在说我保存了许多不同的会话。有没有办法循环遍历我的所有会话列表来运行此命令?
非常感谢
我想在windows下编写脚本来控制putty。 假设我有一个名为mySession的会话。我可以使用以下命令发送它:使用plink获取putty中保存会话的列表
plink -load mySession -l myUserName -pw myPassowrd ps -ef
现在说我保存了许多不同的会话。有没有办法循环遍历我的所有会话列表来运行此命令?
非常感谢
据我所知,会话存储在注册表(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
希望这有助于,即使您的文章几乎是一岁。欢迎提出改进代码的意见。