【问题标题】:reading content from command window through VBScript通过 VBScript 从命令窗口读取内容
【发布时间】:2023-03-07 23:13:02
【问题描述】:

我正在使用一个 vbscript 程序,我在其中执行以下过程,

我调用了一个 bat 文件,根据它的输出,我需要调用另一个 bat 文件。

例如 one.bat 和 two.bat 是批处理文件..

one.bat 文件将在命令窗口中打印消息“成功”或“失败”。我必须通过 vbscript 读取字符串,如果成功必须调用 two.bat

我曾尝试使用 exec,但它打开了一个命令窗口,我不希望在执行 VBS 时在 GUI 中打开任何命令窗口。

对此不熟悉,请举例说明。

【问题讨论】:

  • 您可以使用.Exec() 方法,没有控制台窗口闪烁、临时文件和意外的WScript.Echo 输出静音,请检查this answer

标签: vbscript


【解决方案1】:

当您从 GUI (.HTA?) 调用 .Exec 时,您无法避开控制台,因此您必须使用 .Run。这个answer 展示了如何通过文件捕获输出。

但是:因为你只需要知道 one.bat 是成功还是失败,你可以使用 .Run 的返回值(ERRORLEVEL/one.bat 的退出代码),避免读取其输出的问题。

【讨论】:

  • one.bat 是 java 源代码的编译,因此它会在命令提示符中打印 Success 或 Fail,在这种情况下(ERRORLEVEL/one.bat 的退出代码)也会起作用吗?
  • @user2572985 - 你为什么不测试一下 one.bat 是否相应地设置了 ERRORLEVEL?
  • 如果 .Exec 将调用控制台,是否可以在其中显示一些文本?因为当我通过 .exec 调用 one.bat 时,它没有显示任何文本
猜你喜欢
  • 1970-01-01
  • 2012-07-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-11-04
相关资源
最近更新 更多