从BAT调用VBS传递参数并获取结果

时间:2019-02-09 00:54:52

标签: batch-file vbscript

这是我在蝙蝠中拥有的东西:

SET FoldersSame=False
FOR /F %%r in ('cscript \"%~dp0Compare Folders.vbs\" \"%~1\" \"%~2\" -D') DO SET Result=%%r
IF %Result% == CSript SET FoldersSame=True

它是从另一个蝙蝠叫来的:

CALL "Compare Folders.bat" "C:\Temp1" "C:\Temp2"
IF !FoldersSame! == False SET AllFoldersSame=False

这是产生的:

FOR /F %r in ('cscript \"C:\Compare Folders.vbs\" \"C:\Temp1\" \"C:\Temp2\" -D') DO SET Result=%r
SET Result=Microsoft
SET Result=Copyright
SET Result=CScript

从不调用VBS。

为什么不叫VBS?

为什么我会拿回三个令牌()Microsoft Copyright CScript?

1 个答案:

答案 0 :(得分:1)

借助Compo在评论中提供的建议,我的问题得以解决:

FOR /F "delims=" %%r IN ('CScript //NoLogo "%~dp0Compare Folders.vbs" "%~1" "%~2" -D') DO (SET Result=%%r)