我已经编写了一个批处理文件,它运行一个vbscript,然后从vbscrit收集这些值以供进一步处理。
这是我的密码:
myBatch.bat
@ECHO OFF
setlocal EnableDelayedExpansion
REM ECHO ============= RUNNING BATCH =============
ECHO.
for /F "delims=" %%a in ('CSCRIPT C:\myVBScript.vbs') do (
ECHO RESULT: %%a
)
REM ECHO ============= FINNISHED BATCH =============
ECHO. myVBScript.vbs
Option Explicit
Dim values, splitStr
'ask for value
values=InputBox("Please provide a list separated by semicolon","Do stuff","item1;item2")
splitStr=Split(values,";")
If UBound(splitStr) >= 1 Then
WScript.Echo splitStr(0)
WScript.Echo splitStr(1)
End If,这是输出:
结果: Microsoft (R) Windows脚本主机版本5.8
结果:版权(C)微软公司。版权所有。
结果: item1
结果: item2
前两行从何而来?我如何避免它们?这很烦人,我不知道如何才能得到实际值(item1和item2)。
发布于 2015-04-24 12:34:22
两条线
Microsoft (R) Windows脚本主机版本5.8 版权(C)微软公司。版权所有。
是由解释器cscript.exe自动打印的横幅。
使用nologo参数
cscript //nologo C:\myVBScript.vbs以避免脚本输出中的横幅。
还可以通过运行以下命令一次,使nologo成为用户的默认操作:
cscript //nologo //shttps://stackoverflow.com/questions/29847551
复制相似问题