批处理文件调用所有其他批处理文件
Batch file to call all other batch files
如何创建一个 "do everything" 批处理文件,它只调用其目录中的 所有 个其他批处理文件并一个接一个地执行它们?
我尝试使用
for /r %%i in (*.bat) do call %%i
惨败,因为显然文件迟早会调用自己,最终陷入一次又一次调用自己的无限循环。
我怎样才能更好地管理它?
只需在 for 循环中使用 if 语句:
for /r %%i in (*.bat) do (if "%~dpnx0" NEQ "%%~i" call "%%i")
您有 2 个解决方案:
将您的起始 bat 文件重命名为 .CMD
或
@echo off
for %%i in (*.bat) do if not "%%~nxi"=="%~nx0" call %%i
如何创建一个 "do everything" 批处理文件,它只调用其目录中的 所有 个其他批处理文件并一个接一个地执行它们?
我尝试使用
for /r %%i in (*.bat) do call %%i
惨败,因为显然文件迟早会调用自己,最终陷入一次又一次调用自己的无限循环。
我怎样才能更好地管理它?
只需在 for 循环中使用 if 语句:
for /r %%i in (*.bat) do (if "%~dpnx0" NEQ "%%~i" call "%%i")
您有 2 个解决方案:
将您的起始 bat 文件重命名为 .CMD
或
@echo off
for %%i in (*.bat) do if not "%%~nxi"=="%~nx0" call %%i