【问题标题】:Echo VBScript results in .bat fileEcho VBScript 生成 .bat 文件
【发布时间】:2014-07-18 02:23:01
【问题描述】:

我遇到的情况是,我正在使用一个程序,该程序使用 .bat 文件来运行脚本,然后检查防火墙、加密、软件更新等内容。该程序运行 .bat 文件,然后触发 VBScript 来检查这些值。然后,我正在运行的程序需要将此 VBScript 的结果作为键值对输出回其中。

现在看起来程序在运行时只会看到和读取 .bat 文件。我已经让 VBScript 将结果回显到打开的初始 cmd 窗口,我可以看到结果。我通过在我的 .bat 文件中运行以下命令来做到这一点。

@ECHO OFF
cscript.exe //nologo VBScript.vbs

看起来程序需要在 .bat 文件中回显所有内容。有没有办法从 VBSCript 中获取结果并像这样在 .bat 文件中使用它们?

ECHO strVBScriptResults

【问题讨论】:

    标签: batch-file vbscript cmd echo


    【解决方案1】:

    使用for 命令:

    @echo off
    for /f %%a in ('cscript //nologo VBScript.vbs') do (set "strVBScriptResults=%%a")
    echo/%strVBScriptResults%
    pause
    

    【讨论】:

    • 该解决方案有效,但我无法收集所有回显的信息。我期待以下内容,“Microst Windows 7 Enterprise” 我得到的只是“Microsoft” 另外,我将如何处理多个变量?是不是只有 %%a、%%b、%%c 等等?
    • 尝试使用tokens选项:for /f "tokens=*" %%a in ('cscript //nologo VBScript.vbs') do (set "strVBScriptResults=%%a")
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-03
    • 1970-01-01
    相关资源
    最近更新 更多