在批處理文件中,我試圖檢查一個服務是否啓動,如果沒有,然後等待。檢查服務是否正在運行,而不使用查找命令
我們檢查,如果服務正在運行,我這樣做:
sc query "serviceName" | find /i "RUNNING"
if "%ERRORLEVEL%"=="0" (
echo serviceName is running.
) else (
echo serviceName is not running
)
麻煩是ERRORLEVEL總是被設置爲0,可能是因爲此已知Find bug。 是否有任何替代方法來檢查服務是否已啓動,如果沒有,然後等待?
避免「重置」%ERRORLEVEL%變量在你的代碼中。如果將其設置爲任何值,命令將正確設置錯誤級別值BUT NOT%errorlevel%變量。 –