首页 > 解决方案 > 执行 .bat 文件,然后输入 IP 地址,打开 PuTTY 会话,然后将有更多命令

问题描述

问题:我们列出了 1000 多个需要定期升级固件的路口。excel表有设备ID、路口名称和IP地址。

目标:我们想使用我们的 excel 目录来 ping 这些交叉设备(控制器),然后运行固件升级。批处理文件运行一个程序,该程序要求我们输入相关路口的 IP 地址,然后它会打开一个 PuTTY 会话,该会话有许多菜单可指导您完成固件升级(这些命令如“1”、“5 “, ETC)

我已经尝试了一天,如果我从 ping 中得到肯定的结果,我已经可以打开批处理文件。

当前代码:

Sub FirmwareUpgradeStatus()

'setting values of variables
Set Wks = Worksheets("Upgrade")

Set ipRng = Wks.Range("F2")
Set RngEnd = Wks.Cells(Rows.Count, ipRng.Column).End(xlUp)
Set ipRng = IIf(RngEnd.Row < ipRng.Row, ipRng, Wks.Range(ipRng, RngEnd))

Dim FirmwareUpgrade As Object
Set FirmwareUpgrade = VBA.CreateObject("WScript.Shell")

Dim waitOnReturn As Boolean: waitOnReturn = True
Dim windowStyle As Integer: windowStyle = 1

'this is a loop that feeds each server from the list into the GetPingResult 
function

For Each Cell In ipRng
Result = GetPingResult(Cell)
    If Result = "Connected" Then
    ChDir "C:\Users\C000XXXX\Desktop\maxtime_1.9.11"
    FirmwareUpgrade.Run "C:\Users\C000XXXX\Desktop\maxtime_1.9.11\install.cmd /c ""Cell""", windowStyle, waitOnReturn
    'Shell "C:\Users\C000XXXX\Desktop\maxtime_1.9.11\install.cmd" & "&&Cell"
    End If
  Next Cell

End Sub

标签: excelvba

解决方案


推荐阅读