我有一个VBScript脚本,启动命令提示,远程登录到设备和TFTP的配置到服务器。它的工作时,我登录并手动运行它。我想用Windows Task Scheduler自动化它。
任何帮助都将不胜感激,以下是VBScript脚本:
set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run "cmd"
WScript.Sleep 100
WshShell.AppActivate "C:\Windows\system32\cmd.exe"
WScript.Sleep 300
WshShell.SendKeys "telnet 10.20.70.254{ENTER}"
WScript.Sleep 300
WshShell.SendKeys "netscreen"
WScript.Sleep 300
WshShell.SendKeys "{ENTER}"
WScript.Sleep 300
WshShell.SendKeys "netscreen"
WshShell.SendKeys "{ENTER}"
WScript.Sleep 300
WScript.Sleep 300
WshShell.SendKeys "save conf to tftp 10.10.40.139 test.cfg{ENTER}"
WScript.Sleep 200
WshShell.SendKeys "exit{ENTER}" 'close telnet session'
set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run "cmd"
WScript.Sleep 100
WshShell.AppActivate "C:\Windows\system32\cmd.exe"
WScript.Sleep 300
WshShell.SendKeys "telnet 10.20.70.254{ENTER}"
WScript.Sleep 300
WshShell.SendKeys "netscreen"
WScript.Sleep 300
WshShell.SendKeys "{ENTER}"
WScript.Sleep 300
WshShell.SendKeys "netscreen"
WshShell.SendKeys "{ENTER}"
WScript.Sleep 300
WScript.Sleep 300
WshShell.SendKeys "save conf to tftp 10.10.40.139 palsg140.cfg{ENTER}" 'repeat as needed
WScript.Sleep 200
WshShell.SendKeys "exit{ENTER}" 'close telnet session'
WshShell.SendKeys "{ENTER}" 'get command prompt back
WScript.Sleep 200
WshShell.SendKeys "exit{ENTER}" 'close cmd.exe
WshShell.SendKeys "{ENTER}" 'get command prompt back
WScript.Sleep 200
WshShell.SendKeys "exit{ENTER}" 'close cmd.exe发布于 2008-11-12 15:02:34
添加使用您的凭据运行脚本的计划任务。提醒自己,每次更改密码时都需要更新任务的凭据。让脚本在每次运行时通过电子邮件或其他方式“呼叫总部”是一个好主意,这样您就可以知道它是否正在执行。
为这些类型的活动设置单独的服务id也可能是一个好主意。您可能不需要频繁地更改服务id上的密码。
发布于 2008-11-12 17:46:48
我很确定如果桌面被锁定或者没有用户登录,SendKeys将无法工作。
发布于 2008-11-17 14:09:03
我很抱歉,如果你没有登录,SendKeys将无法工作。根据我的经验,这是不可靠的。使用DOS批处理文件可能会更好。
getftpconf.bat:
telnet 10.10.40.139
netscreen
netscreen
save conf to tftp 10.10.40.139 palsg140.cf
exit差不多吧。
如果在命令提示符下有需要记录的输出,可以在命令行快捷方式的末尾添加“>> output.txt”。
然后,您可以调用另一个批处理文件,通过ftp将该output.txt发送到您需要的任何位置。
您可以轻松地将此批处理文件设置为在windows中作为计划任务运行。
https://stackoverflow.com/questions/284201
复制相似问题