2

我想通过另一个批处理或 vbs 脚本以最小化模式运行批处理文件。我试过的是:
batch1.bat

@echo off  
start /min batch2.bat

批处理2.bat

@echo off  
{my program}  
del /f /q batch1.bat >nul  
del /f /q batch2.bat >nul  

当我尝试这个时,一切正常,第二个批处理运行并完成它的工作,但最后一个最小化的命令提示符窗口保持显示,the windows can not fond the batch file并显示批处理文件路径的简单提示,如命令提示符所示。

如果我只使用exit命令而不是del /f /q batch2.bat >nul第二批中的这一行,那么它可以按我的意愿工作,但是对于我的程序来说,在运行后删除 batch2 很重要。
我唯一的目标是以最小化模式运行 batch2。所以有什么帮助吗?我也不能在这里使用快捷方式进行批处理。

4

5 回答 5

6

这个页面

cmd.exe /c start /min YourBatchFile.bat ^& exit

从任务计划程序运行命令时,我必须cmd.exe作为程序执行并将其余部分作为参数。此外,^& exit从 Windows 8 的任务计划程序运行时,并没有为我关闭生成的窗口。我必须将exit命令构建到我的批处理文件中,以便在完成后从任务栏中删除窗口。

于 2013-12-28T18:08:09.863 回答
4
@echo off

if not "%1" == "min" start /MIN cmd /c %0 min & exit/b >nul 2>&1

:---rest of batch below this line:
于 2017-05-25T19:56:45.300 回答
2

你可以试试这个:

@ECHO OFF &SETLOCAL
{ my program }
DEL "%~f0" /F /Q
于 2013-07-07T16:51:32.997 回答
1

batch2.bat:

@echo off
{myprogram}
>autoDelete.bat echo del batch1.bat batch2.bat autoDelete.bat
2>nul autoDelete.bat
于 2013-07-07T17:59:01.703 回答
-1

伙计们,我在浏览 stackoverflow 问题时解决了我的问题。查看这个问题的答案,你会找到答案。
.vbs 脚本不会运行批处理/如何静默运行批处理

NirCMD exec hide "Path to Batch File\Batch File.bat"

从这里下载 nircmd
官方网站:http ://www.nirsoft.net/utils/nircmd2.html

于 2013-07-08T11:11:42.617 回答