Windows
儘管成功,計劃任務仍返回錯誤 0xff
我有一個執行批處理文件的計劃任務,即使我可以看到它成功完成的結果,根據任務計劃程序,它每次都會失敗並出現錯誤0xff 。
我安排了其他批處理文件,它們也成功完成並按應有的方式返回**0x0 。**我可以看到這些文件之間的唯一區別是工作文件以:
IF ERRORLEVEL 1 ( ("notify me" script here) )
而破碎的以:
IF %2==something ( (run a program here) IF ERRORLEVEL 1 ( (same "notify me" script here) ) )
如果為 false 或其他什麼,IF 塊是否返回**0xff ?**這是怎麼回事?
您正在尋找的語法是:
IF "%2"=="SOMETHING" (
當 %2 為空時,您擁有的行變為:
IF ==SOMETHING (
那是無效的語法。將引號放入其中即可:
IF ""=="SOMETHING" (
這是有效的。
經過一些測試,我發現 IF 塊沒問題,它們似乎沒有改變錯誤級別,但搞砸的是“%2==something”——失敗的時間,沒有第二個參數被傳遞給批處理文件。所以我不確定如何“安全地”測試參數是否存在(即,當它不存在時不會出錯 0xff),除非在那之後可能還有另一個 IF ERRORLEVEL 。但無論如何,我只是更改了計劃任務,所以它總是有第二個參數(無論它是否是“某物”),它似乎現在應該返回 0x0。