使用 PuTTY 命令行启动命令时,它会在不执行命令的情况下退出

When starting a command using PuTTY commandline it exits without performing the command

我正在尝试根据 BAT 文件和 PuTTY v0.75 自动执行 1000 个 SSH 会话 linux。但是,我希望在会话打开时,它们在所有 windows 中执行 node.js 脚本。所以,我使用这个命令:

@echo off
for /l %%N in (1 1 1000) do start "" putty.exe -load "iot" iot@5.18.23.6 -pw password -m "D:\Programs\PuTTY\test.txt"

test.txt中:

node pow.js

问题是会话打开,然后没有执行命令就退出了。

有什么帮助吗?

当您以这种方式执行命令时,您看不到它产生的输出。所以很难调试问题。为了调试它,使用 Plink instead. With Plink, you will be able to see the errors. Alternatively, enable logging in PuTTY (using -sessionlog)


根据我的经验,你的问题是node找不到或者因为环境设置不正确导致失败

为什么会出现这种情况,即使您(我希望)能够在交互式 PuTTY 终端中执行相同的命令,在以下问题中进行了讨论:

  • Script via Plink in .bat behaves differently

它们是关于 Plink 的,但是那里写的所有内容都适用于使用带有 -m 开关的 PuTTY。