簡體   English   中英

編寫批處理腳本以啟動服務

[英]Writing a batch script to start services

我正在編寫一個腳本,它將啟動已定義列表中提供的Windows服務:

set SERVICE_LIST=( "service1" "service2" )

for %%A in %SERVICE_LIST% do (
    net start %%A
    if %ERRORLEVEL% EQU 0 echo "...Service [%%A] started successfully" & goto :nextservice
    if %ERRORLEVEL% NEQ 0 echo "...There was an issue starting service [%%A]"
    :nextservice
)

運行腳本時,出現以下錯誤:

) was unexpected at this time.

我是否無法在do()塊中為每個服務定義所有錯誤捕獲? 有沒有更好的方法來實現我要完成的任務?

set "SERVICE_LIST=service1,service2,..."

FOR %%A in (%SERVICE_LIST%) DO ...

該錯誤是由:nextservice行引起的:您不應在( block )內包括標簽goto命令。 順便說一句,修改命令的語法是一種不好的做法,將命令的一部分存儲在變量中...

set SERVICE_LIST="service1" "service2"

for %%A in (%SERVICE_LIST%) do (
    net start %%A
    if ERRORLEVEL 1 (
       echo "...There was an issue starting service [%%A]"
    ) else (
       echo "...Service [%%A] started successfully"
    )
)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM