Get-Service
ローカル コンピューターまたはリモート コンピューター上のサービスを取得します。
構文
Default (既定)
Get-Service
[[-Name] <String[]>]
[-ComputerName <String[]>]
[-DependentServices]
[-RequiredServices]
[-Include <String[]>]
[-Exclude <String[]>]
[<CommonParameters>]
DisplayName
Get-Service
-DisplayName <String[]>
[-ComputerName <String[]>]
[-DependentServices]
[-RequiredServices]
[-Include <String[]>]
[-Exclude <String[]>]
[<CommonParameters>]
InputObject
Get-Service
[-ComputerName <String[]>]
[-DependentServices]
[-RequiredServices]
[-Include <String[]>]
[-Exclude <String[]>]
[-InputObject <ServiceController[]>]
[<CommonParameters>]
説明
Get-Service コマンドレットは、実行中のサービスや停止されたサービスを含む、ローカル コンピューターまたはリモート コンピューター上のサービスを表すオブジェクトを取得します。 既定では、パラメーターなしで Get-Service を実行すると、ローカル コンピューターのすべてのサービスが返されます。
サービス名またはサービスの表示名を指定して特定のサービスのみを取得するようにこのコマンドレットを指示するか、サービス オブジェクトをこのコマンドレットにパイプできます。
例
例 1: コンピューター上のすべてのサービスを取得する
この例では、コンピューター上のすべてのサービスを取得します。
Get-Service *を入力したかのように動作します。 既定の表示には、各サービスの状態、サービス名、および表示名が表示されます。
Get-Service
例 2: 検索文字列で始まるサービスを取得する
この例では、サービス名が WMI (Windows Management Instrumentation) で始まるサービスを取得します。
Get-Service "wmi*"
例 3: 検索文字列を含むサービスを表示する
次の使用例は、networkという単語を含む表示名を持つサービスを表示します。 表示名を検索すると、サービス名に xmlprov、ネットワーク プロビジョニング サービスなどの Netが含まれていない場合でも、ネットワーク関連のサービスが検索されます。
Get-Service -DisplayName "*network*"
例 4: 検索文字列と除外で始まるサービスを取得する
この例では、WinRM サービスを除き、winで始まるサービス名を持つサービスのみを取得します。
Get-Service -Name "win*" -Exclude "WinRM"
例 5: 現在アクティブなサービスを表示する
次の使用例は、状態が Runningのサービスのみを表示します。
Get-Service | Where-Object {$_.Status -eq "Running"}
Get-Service コンピューター上のすべてのサービスを取得し、パイプラインの下にオブジェクトを送信します。
Where-Object コマンドレットは、Status プロパティが Runningに等しいサービスのみを選択します。
状態は、サービス オブジェクトの 1 つのプロパティのみです。 すべてのプロパティを表示するには、「Get-Service | Get-Member」と入力します。
例 6: リモート コンピューターでサービスを取得する
Get-Service -ComputerName "Server02"
このコマンドは、Server02 リモート コンピューター上のサービスを取得します。
の Get-Service パラメーターは Windows PowerShell リモート処理を使用しないため、コンピューターが Windows PowerShell でリモート処理用に構成されていない場合でも、このパラメーターを使用できます。
例 7: 依存サービスを持つローカル コンピューター上のサービスを一覧表示する
この例では、依存するサービスがあるサービスを取得します。
Get-Service |
Where-Object {$_.DependentServices} |
Format-List -Property Name, DependentServices, @{
Label="NoOfDependentServices"; Expression={$_.DependentServices.Count}
}
Name : AudioEndpointBuilder
DependentServices : {AudioSrv}
NoOfDependentServices : 1
Name : Dhcp
DependentServices : {WinHttpAutoProxySvc}
NoOfDependentServices : 1
...
Get-Service コマンドレットは、コンピューター上のすべてのサービスを取得し、パイプラインの下にオブジェクトを送信します。
Where-Object コマンドレットは、DependentServices プロパティが null ではないサービスを選択します。
結果は、パイプラインから Format-List コマンドレットに送信されます。
Property パラメーターには、サービスの名前、依存サービスの名前、および各サービスの依存サービスの数を表示する計算プロパティが表示されます。
例 8: プロパティ値でサービスを並べ替える
この例では、サービスを Status プロパティの値で昇順に並べ替えると、サービスを実行する前に停止したサービスが表示されることを示します。 これは、Status の値が列挙体であり、Stopped の値が 1で、Running の値が 4であるために発生します。 詳細については、「ServiceControllerStatus を参照してください。
実行中のサービスを最初に一覧表示するには、 コマンドレットの Sort-Object パラメーターを使用します。
Get-Service "s*" | Sort-Object Status
Status Name DisplayName
------ ---- -----------
Stopped stisvc Windows Image Acquisition (WIA)
Stopped SwPrv MS Software Shadow Copy Provider
Stopped SysmonLog Performance Logs and Alerts
Running Spooler Print Spooler
Running srservice System Restore Service
Running SSDPSRV SSDP Discovery Service
Running ShellHWDetection Shell Hardware Detection
Running Schedule Task Scheduler
Running SCardSvr Smart Card
Running SamSs Security Accounts Manager
Running SharedAccess Windows Firewall/Internet Connectio...
Running SENS System Event Notification
Running seclogon Secondary Logon
例 9: 複数のコンピューターでサービスを取得する
Get-Service -Name "WinRM" -ComputerName "localhost", "Server01", "Server02" |
Format-Table -Property MachineName, Status, Name, DisplayName -Auto
MachineName Status Name DisplayName
------------ ------ ---- -----------
localhost Running WinRM Windows Remote Management (WS-Management)
Server01 Running WinRM Windows Remote Management (WS-Management)
Server02 Running WinRM Windows Remote Management (WS-Management)
このコマンドでは、Get-Service コマンドレットを使用して、2 台のリモート コンピューターとローカル コンピューター (Get-Service Winrm) で localhost コマンドを実行します。
コマンドはリモート コンピューターで実行され、結果はローカル コンピューターに返されます。 パイプライン演算子 (|) は、サービスをテーブルとして書式設定する Format-Table コマンドレットに結果を送信します。
Format-Table コマンドは、Property パラメーターを使用して、MachineName プロパティなど、テーブルに表示されるプロパティを指定します。
例 10: サービスの依存サービスを取得する
この例では、WinRM サービスに必要なサービスを取得します。 サービスの ServicesDependedOn プロパティの値が返されます。
Get-Service "WinRM" -RequiredServices
例 11: パイプライン 演算子を使用してサービスを取得する
この例では、ローカル コンピューター上の WinRM サービスを取得します。 サービス名の文字列は、「」で囲んでパイプラインに送られ、Get-Serviceに達します。
"WinRM" | Get-Service
パラメーター
-ComputerName
指定したコンピューターで実行されているサービスを取得します。 既定値はローカル コンピューターです。
リモート コンピューターの NetBIOS 名、IP アドレス、または完全修飾ドメイン名 (FQDN) を入力します。
ローカル コンピューターを指定するには、コンピューター名、ドット (.)、または localhostを入力します。
このパラメーターは、Windows PowerShell リモート処理には依存しません。 コンピューターがリモート コマンドを実行するように構成されていない場合でも、 の Get-Service パラメーターを使用できます。
パラメーターのプロパティ
| 型: | String[] |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
| Aliases: | Cn |
パラメーター セット
(All)
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | True |
| 残りの引数からの値: | False |
-DependentServices
このコマンドレットは、指定されたサービスに依存するサービスのみを取得することを示します。
パラメーターのプロパティ
| 型: | SwitchParameter |
| 規定値: | False |
| ワイルドカードのサポート: | False |
| DontShow: | False |
| Aliases: | DS |
パラメーター セット
(All)
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-DisplayName
取得するサービスの表示名を文字列配列として指定します。 ワイルドカードを使用できます。
パラメーターのプロパティ
| 型: | String[] |
| 規定値: | None |
| ワイルドカードのサポート: | True |
| DontShow: | False |
パラメーター セット
DisplayName
| 配置: | Named |
| 必須: | True |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-Exclude
文字列配列として、このコマンドレットが操作から除外するサービスを指定します。
このパラメーターの値は、Name パラメーターを修飾します。
s*など、name 要素またはパターンを入力します。 ワイルドカードを使用できます。
パラメーターのプロパティ
| 型: | String[] |
| 規定値: | None |
| ワイルドカードのサポート: | True |
| DontShow: | False |
パラメーター セット
(All)
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-Include
文字列配列として、このコマンドレットが操作に含めるサービスを指定します。 このパラメーターの値は、Name パラメーターを修飾します。
s*など、name 要素またはパターンを入力します。 ワイルドカードを使用できます。
パラメーターのプロパティ
| 型: | String[] |
| 規定値: | None |
| ワイルドカードのサポート: | True |
| DontShow: | False |
パラメーター セット
(All)
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-InputObject
取得するサービスを表す ServiceController オブジェクトを指定します。 オブジェクトを含む変数を入力するか、オブジェクトを取得するコマンドまたは式を入力します。 サービス オブジェクトをこのコマンドレットにパイプできます。
パラメーターのプロパティ
| 型: | |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
InputObject
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | True |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-Name
取得するサービスのサービス名を指定します。 ワイルドカードを使用できます。
パラメーターのプロパティ
| 型: | String[] |
| 規定値: | None |
| ワイルドカードのサポート: | True |
| DontShow: | False |
| Aliases: | サービス名 |
パラメーター セット
Default
| 配置: | 0 |
| 必須: | False |
| パイプラインからの値: | True |
| プロパティ名別のパイプラインからの値: | True |
| 残りの引数からの値: | False |
-RequiredServices
このコマンドレットは、このサービスに必要なサービスのみを取得することを示します。 このパラメーターは、サービスの ServicesDependedOn プロパティの値を取得します。
パラメーターのプロパティ
| 型: | SwitchParameter |
| 規定値: | False |
| ワイルドカードのサポート: | True |
| DontShow: | False |
| Aliases: | SDO, ServicesDependedOn |
パラメーター セット
(All)
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
CommonParameters
このコマンドレットでは、一般的なパラメーター -Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction、-WarningVariable の各パラメーターがサポートされています。 詳細については、about_CommonParametersを参照してください。
入力
ServiceController
サービス オブジェクトをこのコマンドレットにパイプできます。
String
サービス名をこのコマンドレットにパイプできます。
出力
ServiceController
このコマンドレットは、コンピューター上のサービスを表すオブジェクトを返します。
メモ
Windows PowerShell には、Get-Serviceの次のエイリアスが含まれています。
gsv
このコマンドレットは、現在のユーザーがサービスを表示するアクセス許可を持っている場合にのみサービスを表示できます。 このコマンドレットでサービスが表示されない場合は、サービスを表示するアクセス許可がない可能性があります。
システム上の各サービスのサービス名と表示名を見つけるには、「Get-Service」と入力します。 サービス名は Name 列に表示され、表示名は DisplayName 列に表示されます。
注
通常、Get-Service はドライバーではなくサービスに関する情報を返します。 ただし、ドライバーの名前を指定すると、Get-Service はドライバーに関する情報を返します。
- 列挙にデバイス ドライバー サービスが含まれていない
- ワイルドカードを指定すると、コマンドレットは Windows サービスのみを返します
- 名 またはデバイス サービス名と完全に一致する DisplayName を指定すると、デバイス インスタンスが返されます
状態値で昇順に並べ替えると、サービス Stopped がサービス Running の前に表示されます。 サービスの Status プロパティは、状態の名前が整数値を表す列挙値です。 並べ替えは、名前ではなく整数値に基づいています。
Running
Stopped 前に表示されるのは、Stopped の値が 1で、Running の値が 4であるためです。 詳細については、「ServiceControllerStatus を参照してください。