VB 或批处理脚本获取远程 Windows CE 设备的 MAC 地址

VB 或批处理脚本获取远程 Windows CE 设备的 MAC 地址

我正在尝试用 vb 编写一个脚本,从 Windows 7 笔记本电脑打开到远程 Windows CE7 设备的 telnet 会话,以便将 ipconfig /all 的输出获取到文本文件,然后将该文本文件的内容附加到日志中。到目前为止,我只能通过运行 vb 脚本,然后运行 ​​ftp 脚本从设备检索日志来做到这一点。我还没有弄清楚如何将该文件的内容复制到主日志文件中。

这是我的 vb 脚本:

Set OBJECT = CreateObject("WScript.Shell")
OBJECT.run"cmd"
WScript.Sleep 800

OBJECT.SendKeys"telnet ipaddress" OBJECT.SendKeys("{Enter}") WScript.Sleep 800

OBJECT.SendKeys"admin" OBJECT.SendKeys("{Enter}") WScript.Sleep 800

OBJECT.SendKeys"admin" OBJECT.SendKeys("{Enter}") WScript.Sleep 800

OBJECT.SendKeys"ipconfig /all >> somelog.log" OBJECT.SendKeys("{Enter}") WScript.Sleep 800

OBJECT.SendKeys"^]" WScript.Sleep 800 OBJECT.SendKeys"quit" OBJECT.SendKeys("{Enter}") WScript.Sleep 800 OBJECT.SendKeys"exit" OBJECT.SendKeys("{Enter}")

然后我运行一个运行 ftp 文件的批处理文件:


open 172.16.24.45
admin
admin
get "sendkeys.log"
close

我希望能够自动化整个过程,并用 1 个文件完成。任何帮助都将不胜感激。

答案1

以下命令应该可以满足您的要求。将它们复制并保存到 .bat 或 .cmd 文件中。请注意,任何以 包围的文件名<>都应替换为系统中的实际文件名,请勿在脚本中输入<>,否则将导致不良结果。

cscript.exe //nologo <vbsendkeys_script.vbs>
call <ftpget.bat>
copy <masterlog.log> + sendkey.log mastertemp.log
del <masterlog.log>
ren mastertemp.log <masterlog.log>

cscript.exe 是 Windows 的命令行脚本宿主。它将运行您指定的 .vbs 并在命令行上输出结果(如果有)。

Call用于运行另一个批处理文件,然后将执行返回到原始(调用)批处理文件。如果不使用call,则两个批处理文件都会在第二个批处理文件运行后终止。

其余命令将 sendkey.log 复制到主日志末尾并进行一些重命名和清理。

相关内容