此代码中仍显示命令提示符? 我在某处看到了> nul 2> nul,但我不知道该把它放在哪里?
@echo off
rem script1
cd C:\Users\Blah\Downloads\Script\
start script1
rem script2
cd C:\Program Files (x86)\script\
start /W script3.exe
rem somthing
cd C:\Program Files (x86)\script\
start /W script4.exe
exit
答案 0 :(得分:0)
我认为您看到的输出来自您正在调用的脚本。
尝试以下(即):
cd C:\Program Files (x86)\script\
start /W script3.exe > nul 2> nul
> -symbol将输出重定向到文件,如果该文件是nul
,则将其发送到所谓的“null-device”,这意味着它只是被删除。 2>
也会重定向任何错误输出。您应该小心第二个,因为它可能会导致您不会看到脚本中发生的实际错误。
答案 1 :(得分:0)
1 。将您的代码保存在批处理文件中,让我们说My.bat如下:
<强> My.bat 强>:
@echo off
rem script1
cd C:\Users\Blah\Downloads\Script\
start script1
rem script2
cd C:\Program Files (x86)\script\
start /W script3.exe
rem somthing
cd C:\Program Files (x86)\script\
start /W script4.exe
exit
<强> 2 即可。创建一个VBScript文件,让我们说Master.vbs并在其中调用您的My.bat文件。
让我们假设您的批处理文件位于C:\ Test \ My.bat然后:
<强> Master.vbs 强>:
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run chr(34) & "C:\Test\My.bat" & Chr(34), 0
Set WshShell = Nothing
它会以不可见/隐藏模式运行您的批处理文件。