我必须使用PuTTY执行一堆命令。为了自动化这个过程,我正在创建一个文件,并使用VBScript动态地放置所有命令。此文件正在我的本地文件夹中创建。我正在尝试使用PuTTY执行此文件。但有些东西不起作用。我无法调用此本地文件..
Dim username
Dim password
username = InputBox("Please Enter Your UserID")
password = InputBox("Please Enter Your Password")
Set fs = CreateObject("Scripting.FileSystemObject")
Set a = fs.CreateTextFile("C:\TestFile.sh", True)
a.writeLine("cd /home/bin/")
Set shell = wscript.CreateObject("wscript.Shell")
pcmd = "putty.exe -ssh"&" "&username & "@10.51.12.34 -pw" &" "&password&" "&"-m"&" "&"""c:\Testfile.sh"""
我能够登录并且脚本文件也已成功创建。但是当我尝试拨打Testfile.sh
时,我收到了无效的端口号。
请建议。
答案 0 :(得分:1)
您为passwrd
分配值时使用password
。
所以你得到的命令行是:
putty.exe -ssh username@10.51.12.34 -pw -m "c:\Testfile.sh"
虽然我没有得到"无效的端口号"您的命令行语法错误,我得到了类似的混淆错误。
所有这些显然是因为PuTTY命令行解析器被-pw
开关弄糊涂而没有值。
您还应该在启动PuTTY之前关闭该文件。
组装命令行的表达式毫无意义。
这个怎么样?
pcmd = "putty.exe -ssh " & username & "@10.51.12.34 -pw " & password & " -m ""c:\Testfile.sh"""
考虑使用plink.exe
代替putty.exe
进行自动化
它具有相同的命令行语法,但它是一个控制台应用程序
https://the.earth.li/~sgtatham/putty/latest/htmldoc/Chapter7.html