Start-Service
停止しているサービスを 1 つ以上開始します。
構文
Start-Service
[-InputObject] <ServiceController[]>
[-PassThru]
[-Include <String[]>]
[-Exclude <String[]>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Start-Service
[-Name] <String[]>
[-PassThru]
[-Include <String[]>]
[-Exclude <String[]>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Start-Service
[-PassThru]
-DisplayName <String[]>
[-Include <String[]>]
[-Exclude <String[]>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
説明
このコマンドレットは、Windows プラットフォームでのみ使用できます。
コマンドレットは Start-Service
、指定された各サービスの Windows サービス コントローラーに開始メッセージを送信します。 サービスが既に実行中の場合は、メッセージが無視されます。エラーにはなりません。 サービス名または表示名でサービスを指定することも、InputObject パラメーターを使用して、開始するサービスを表すサービス オブジェクトを指定することもできます。
例
例 1: 名前を使用してサービスを開始する
この例では、ローカル コンピューターで EventLog サービスを開始します。 Name パラメーターは、サービス名によってサービスを識別します。
Start-Service -Name "eventlog"
例 2: サービスを開始せずに情報を表示する
この例では、"remote" を含む表示名を持つサービスを開始した場合の動作を示します。
Start-Service -DisplayName *remote* -WhatIf
DisplayName パラメーターは、サービス名ではなく表示名でサービスを識別します。 WhatIf パラメーターを指定すると、コマンドの実行時に何が起こるかをコマンドレットに表示しますが、変更は行いません。
例 3: サービスを開始し、テキスト ファイルにアクションを記録する
次の使用例は、コンピューター上で Windows Management Instrumentation (WMI) サービスを開始し、services.txt ファイルにアクションのレコードを追加します。
$s = Get-Service wmi
Start-Service -InputObject $s -PassThru | Format-List >> services.txt
まず、WMI サービスを表すオブジェクトを取得し、変数に$s
格納するために使用Get-Service
します。 次に、サービスを開始します。 PassThru パラメーターがないと、Start-Service
出力は作成されません。 パイプライン演算子 (|
) は、オブジェクトの出力 Start-Service
をコマンドレットに渡して Format-List
、オブジェクトをプロパティの一覧として書式設定します。 追加リダイレクト演算子 (>>
) は、出力をservices.txt ファイルにリダイレクトします。 出力は、既存のファイルの末尾に追加されます。
例 4: 無効なサービスを開始する
この例では、サービスの開始の種類が [無効] のときにサービス を開始する方法を示します。
PS> Start-Service tlntsvr
Start-Service : Service 'Telnet (TlntSvr)' cannot be started due to the following error: Cannot start service TlntSvr on computer '.'.
At line:1 char:14
+ Start-Service <<<< tlntsvr
PS> Get-CimInstance win32_service | Where-Object Name -eq "tlntsvr"
ExitCode : 0
Name : TlntSvr
ProcessId : 0
StartMode : Disabled
State : Stopped
Status : OK
PS> Set-Service tlntsvr -StartupType manual
PS> Start-Service tlntsvr
Telnet サービス (tlntsvr) を最初に開始しようとすると失敗します。 このコマンドはGet-CimInstance
、Tlntsvr サービスの StartMode プロパティが Disabled であることを示しています。 コマンドレットは Set-Service
、開始の種類を手動に 変更します。 これで、コマンドを Start-Service
再送信できます。 今度はコマンドが成功します。 コマンドが成功したことを確認するには、次を実行 Get-Service
します。
パラメーター
-Confirm
コマンドレットの実行前に確認を求めるメッセージが表示されます。
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DisplayName
開始するサービスの表示名を指定します。 ワイルドカード文字を使用できます。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-Exclude
このコマンドレットが省略するサービスを指定します。 このパラメーターの値は、Name パラメーターを修飾します。 name 要素またはパターンを入力します (例 s*
: . ワイルドカード文字を使用できます。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-Include
このコマンドレットが開始するサービスを指定します。 このパラメーターの値は、Name パラメーターを修飾します。 name 要素またはパターンを入力します (例 s*
: . ワイルドカード文字を使用できます。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-InputObject
開始する サービスを表す ServiceController オブジェクトを指定します。 オブジェクトが格納されている変数を入力するか、オブジェクトを取得するコマンドまたは式を入力します。
Type: | ServiceController[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Name
開始するサービスのサービス名を指定します。
パラメーター名は省略可能です。 Name またはそのエイリアス ServiceName を使用することも、パラメーター名を省略することもできます。
Type: | String[] |
Aliases: | ServiceName |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-PassThru
サービスを表すオブジェクトを返します。 既定では、このコマンドレットによる出力はありません。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
コマンドレットの実行時に発生する内容を示します。 このコマンドレットは実行されません。
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
入力
サービス オブジェクトをこのコマンドレットにパイプできます。
サービス名を含む文字列をこのコマンドレットにパイプできます。
出力
None
既定では、このコマンドレットは出力を返しません。
PassThru パラメーターを使用すると、このコマンドレットはサービスを表す ServiceController オブジェクトを返します。
メモ
PowerShell には、次のエイリアスが Start-Service
含まれています。
- Windows:
sasv
このコマンドレットは、Windows プラットフォームでのみ使用できます。
Start-Service
は、現在のユーザーがこれを行うアクセス許可を持っている場合にのみ、サービスを制御できます。 コマンドが正常に機能しない場合は、必要なアクセス許可が与えられていない可能性があります。- サービス名を検索し、システム上のサービスの名前を表示するには、「.」と入力します
Get-Service
。 サービス名は [名前] 列に表示され、表示名は DisplayName 列に表示されます。 - 開始の種類が手動、自動、または自動 (遅延開始) のサービスのみを開始できます。 開始タイプが Disabled のサービスを開始することはできません。 コマンドが
Start-Service
メッセージCannot start service \<service-name\> on computer
で失敗した場合は、サービスの開始の種類を見つけるために使用Get-CimInstance
し、必要な場合はコマンドレットをSet-Service
使用してサービスの開始の種類を変更します。 - Performance Logs and Alerts (SysmonLog) などのいくつかのサービスは、処理しなければならない作業がないと自動的に停止します。 PowerShell は、ほぼ即座に停止するサービスを開始すると、次のメッセージを表示します。
Service \<display-name\> start failed.
関連リンク
PowerShell
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示