1
我試圖使用forfiles來檢查文件夾中是否有更新的.xlsx文件(小於1天),然後根據是否有更新的文件運行另一個bat文件。Forfiles循環/錯誤級別問題
最初我有一個這樣做的腳本,但有些天有多個新的.xlsx文件,所以腳本「循環」,並會多次運行success.bat文件。
如果找不到更新的文件,cmd將退出並顯示錯誤,所以我使用它來運行fail.bat文件。
這是我的時刻:
@echo on
set found=0
forfiles /p C:\ /m *.xlsx /d 0 /c "cmd /k set found=1"
if /i %found%==1 (
Call Success.bat
) else (
if /i %found%==0 (
Call Fail.bat
)
PAUSE
現在能正常工作時有更新文件..也就是說,它擺脫了循環的問題。
不過我現在有,如果沒有更新的文件中找到cmd退出並使用
if ERRORLEVEL 1 call fail.bat
似乎並沒有爲我工作了問題...... 我只是沒有好本,如果與.bat文件
爲什麼不簡化成簡單的一行:'forfiles ... && call success.bat ||調用fail.bat'。另外,你忘了'/ d 0'選項。 – dbenham
嘗試了這一點,添加了「/ d 0」,它運行Fail.bat,但如果它發現一個文件,它不會運行Success.bat – Slingy
@dbenham謝謝,我編輯了我的答案。這太好了。 – unclemeat