1

我有一个在当前文件夹中生成报告的可执行文件,我希望在生成报告后将其移动到另一个文件夹:

start /WAIT /B "" "C:\Generator.exe"
for /R "C:\" %%f in (*.xlsx) do copy  "%%f" "C:\ABC"
Del /Q "C:\*.xlsx"

问题是批处理文件中的第二行和第三行在第一行终止之前运行(它向我显示 .xlsx 文件不存在的消息,这是很正常的,因为 .exe 仍在运行)

4

2 回答 2

2

尝试这个:

C:\Generator.exe
for /R "C:\" %%f in (*.xlsx) 复制 "%%~f" "C:\ABC"
Del /Q "C:\*.xlsx"
于 2013-07-03T11:51:04.820 回答
1
c:\generator.exe
:sleeping
tasklist /FI "IMAGENAME eq generator.exe" 
if "%ERRORLEVEL%"=="0" goto sleeping
for /R "C:\" %%f in (*.xlsx) do copy  "%%f" "C:\ABC"
Del /Q "C:\*.xlsx"
exit

有一个睡眠直到 generator.exe 停止,然后继续到代码中的下一行......错误级别检查进程是否正在运行(状态 = 0),所以直到错误级别变为 1 循环继续。

席德

于 2013-07-03T14:14:51.203 回答