[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
本帖最后由 yakeyun 于 2021-8-4 17:08 编辑

回复 1# 5i365

要让程序单独运行,脱离代码文件执行,所以需要加上start命令。
同时调用另一个批处理,最好用call命令,可以等待a代码执行完了,再执行b的自删除,避免报错。
@echo off
(echo,start notepad
echo,del %%0
)>a.bat
call a.bat
del %0

TOP

回复 3# 5i365


如果没有特殊需求,为什么不简化运行:

@echo off
start /wait notepad
start /wait calc
:calc
tasklist /nh>C:\kill.ini
@find /I /C "Calculator.exe" C:\kill.ini > nul
if %ERRORLEVEL% == 1 (start /wait wordpad) else (goto calc)
del %0

TOP

本帖最后由 yakeyun 于 2021-8-5 23:22 编辑

回复 3# 5i365


@echo off

::a.bat
(echo,@echo off
echo,if exist test.bat del test.bat
echo,call notepad
echo,call b.bat
)>a.bat

::b.bat
echo,@echo off >b.bat
echo,del a.bat >>b.bat
echo,call calc >>b.bat
echo,:run >>b.bat
echo,tasklist /nh ^>C:\kill.ini >>b.bat
echo,find /I /C "Calculator.exe" C:\kill.ini > nul >>b.bat
echo,if %%ERRORLEVEL%% == 1 (call c.bat^&del b.bat^&taskkill /f /im cmd.exe) else (goto run) >>b.bat

::c.bat
(echo,@echo off
echo,start wordpad
echo,del %%0
)>c.bat

start /min a.bat

TOP

返回列表