Windows

儘管成功,計劃任務仍返回錯誤 0xff

  • June 9, 2015

我有一個執行批處理文件的計劃任務,即使我可以看到它成功完成的結果,根據任務計劃程序,它每次都會失敗並出現錯誤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。

引用自:https://serverfault.com/questions/67310