【发布时间】:2021-12-25 18:21:21
【问题描述】:
我想在同一个窗口中启动 3 个命令。
目前我有这批,但每个命令有 3 个不同的窗口。
start /d "c:\Program Files\myfolder" cmd /k cscript A
timeout /t 6 >nul
start /d "c:\Program Files\myfolder" cmd /k cscript B
timeout /t 6 >nul
start /wait /d "c:\PProgram Files\myfolder" cmd /k cscript C
我应该修改什么以只有一个窗口?谢谢
【问题讨论】:
-
信息这么少,你还指望我们猜吗?我将从 everything 开始;所以也许:1.
@CD /D "%ProgramFiles%\myfolder" 2>NUL || GoTo :EOF,2.@%SystemRoot%\System32\cscript.exe //NoLogo "A.vbs",3.@%SystemRoot%\System32\cscript.exe //NoLogo "B.vbs",4.@%SystemRoot%\System32\cscript.exe //NoLogo "C.vbs",5.@%SystemRoot%\System32\timeout.exe /T -1。 -
使用
START命令执行CMD.EXE运行CSCRIPT.EXE来启动另一个脚本没有逻辑意义。你想完成什么? -
如何将第一行替换为
@cd /D "C:\Program Files\myfolder" || exit /B,将第二行替换为@%SystemRoot%\System32\cscript.exe //NoLogo A,将第三行替换为@%SystemRoot%\System32\cscript.exe //NoLogo B,将第四行替换为@%SystemRoot%\System32\cscript.exe //NoLogo C并删除最后一行?您想知道为什么我建议与 Compo 几乎相同吗?好吧,相同的要求通常会导致相似的代码。 -
它工作得非常好,非常感谢。我使用了 Mofi 解决方案。事实上,我使用了很多命令,这种方式是可以的。我想要完成的是在“myfolder”目录中打开一个命令提示符,然后应用一些脚本 .VBS 。 @cd /d "c:\Program Files\MyFolder" || exit /b timeout /t 4 >nul @%SystemRoot%\System32\cscript.exe //NoLogo A.VBS timeout /t 4 >nul @%SystemRoot%\System32\cscript.exe //NoLogo B.VBS timeout /t 4 >nul @%SystemRoot%\System32\cscript.exe //NoLogo C.VBS
-
从技术上讲,您已经使用了我们的两个评论,但是,您在生成的代码中遗漏了一些东西,我建议您使用它,(它已经显示在我的评论)。请不要在不提供路径和扩展名的情况下调用命令,它是惰性的,假设没有对
%Path%或%PATHEXT%变量进行任何更改,并且需要更长的时间,(因为系统需要遍历这些变量中的值以首先找到文件)。您的timeout /t 4 >nul行应该如下所示,@%SystemRoot%\System32\timeout.exe /T 4 1>NUL。
标签: batch-file command-line window