2017-02-14 3 views

答えて

1

あなたのスクリプトを完了するために、forループでscコマンドを使用することができます。必要であれば、あなたはsc start代わりのnet startを使用することができます

@echo off 
for /f "tokens=*" %%s in ('wmic service where started^=false get name') do (
    for /f "tokens=3" %%t in ('sc qc %%s ^|findstr /c:"START_TYPE"') do (
     if "%%t"=="2" net start %%s 
    ) 
) 
echo "The program has completed" 
pause>nul 

net startは、起動タスクが完了した後に成功メッセージを返しますが、sc startは、サービス起動の処理中にメッセージを返します。あなたがステップバイステップで完了したプロセスを見たい人なら、net startがあなたのために良い選択でしょう。

1

すべて同じWMICコマンドを使用して試してみることができます。

WMIC Service Where "StartMode='Auto' And Started='False'" Call StartService 

ただ、いくつかのサービスが遅延自動起動または保留中のいずれであってもよく、これは、アカウントにそのような情報を取ることはありません覚えておいてください。

+0

ありがとうございますが、動作していますが、自動的に起動していない「iClarityQoSService、isaHelperSvc、O2FLASH」のようなサービスはほとんどありません。 –

関連する問題