putty -m命令选项失败,“无法打开..文件”在Windows 7上



我正在尝试使用批处理文件自动登录。我有这个:

start "title" "C:Program FilesPuTTYputty.exe" "server_name@server_IP" -pw "password" -m "commands_to_execute.txt"

所有内容在我的Windows 10机器上都起作用,但是在Windows 7中,命令选项-m不起作用。错误消息是:

无法打开命令文件:" commands_to_execute.txt"

我尝试将所有路径更改为" C: Program Files Putty",设置工作目录/D,在实际目录中工作,我还将路径添加到:

中的环境变量

高级系统设置>环境变量

我还使用了plink而不是油灰。

发生了什么事?

您的问题与Windows 7 vs Windows 10有任何关系。

很可能在Windows 7上执行批处理文件的工作目录未设置为存储commands_to_execute.txt文件的文件夹。

可能的解决方案是:

  • 设置工作目录以您在Windows 10

  • 上设置的方式相同
  • 使用脚本文件的完整路径:

    -m "C:pathtocommands_to_execute.txt"
    
  • 设置Putty的工作目录,以明确使用:

    start "title" /D "C:pathto" "C:Program FilesPuTTYputty.exe"  ...
    
  • 或,如果脚本文件与批处理文件在同一文件夹中,则可以使用:

    start "title" /D "%~dp0" "C:Program FilesPuTTYputty.exe"  ...
    

您需要使用plink.exe作为此而不是putty.exe,只需替换:

start "title" "C:Program FilesPuTTYplink.exe" "server_name@server_IP" -pw "password" -m "commands_to_execute.txt"

或使其更容易:

cd C:Program FilesPuTTY
plink.exe -ssh pi@192.168.1.166 -P 22 -pw P@SSWRD ~/script.sh
plink.exe -ssh pi@192.168.1.166 -P 22 -pw P@SSWRD -m commands.txt 
pause

两行中的任何一个都可以。

最新更新