Get-Service
Возвращает службы на компьютере.
Синтаксис
Get-Service
[[-Name] <String[]>]
[-DependentServices]
[-RequiredServices]
[-Include <String[]>]
[-Exclude <String[]>]
[<CommonParameters>]
Get-Service
[-DependentServices]
[-RequiredServices]
-DisplayName <String[]>
[-Include <String[]>]
[-Exclude <String[]>]
[<CommonParameters>]
Get-Service
[-DependentServices]
[-RequiredServices]
[-Include <String[]>]
[-Exclude <String[]>]
[-InputObject <ServiceController[]>]
[<CommonParameters>]
Описание
Этот командлет доступен только на платформе Windows.
Командлет Get-Service
получает объекты, представляющие службы на компьютере, включая запуск и остановку служб. По умолчанию при Get-Service
запуске без параметров возвращаются все службы локального компьютера.
Этот командлет можно направить для получения только определенных служб, указав имя службы или отображаемое имя служб, или передать объекты службы в этот командлет.
Примеры
Пример 1. Получение всех служб на компьютере
Этот пример получает все службы на компьютере. Он ведет себя так, как будто вы ввели Get-Service *
. По умолчанию отображается состояние, имя службы и отображаемое имя каждой службы.
Get-Service
Пример 2. Получение служб, начинающихся со строки поиска
В этом примере службы извлекаются с именами служб, начинающимися с WMI
(инструментирование управления Windows).
Get-Service "wmi*"
Пример 3. Отображение служб, включающих строку поиска
В этом примере отображаются службы с отображаемым именем, включающим слово network
. Поиск отображаемого имени находит сетевые службы, даже если имя службы не включает Net
, например xmlprov, службу подготовки сети.
Get-Service -Displayname "*network*"
Пример 4. Получение служб, начинающихся с строки поиска и исключения
Этот пример получает только службы с именами служб, начинающимися с win
, за исключением службы WinRM.
Get-Service -Name "win*" -Exclude "WinRM"
Пример 5. Отображение служб, которые сейчас активны
В этом примере отображаются только службы с состоянием Running
.
Get-Service | Where-Object {$_.Status -eq "Running"}
Get-Service
получает все службы на компьютере и отправляет объекты вниз конвейера. Командлет Where-Object
выбирает только службы со свойством Status , равным Running
.
Status — это лишь одно из свойств объектов служб. Чтобы просмотреть все свойства, введите Get-Service | Get-Member
.
Пример 6. Вывод списка служб на компьютере с зависимыми службами
В этом примере получаются службы, имеющие зависимые службы.
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 отображает имя службы, имя зависимых служб и вычисляемое свойство, отображающее количество зависимых служб для каждой службы.
Пример 7. Сортировка служб по значению свойства
В этом примере показано, что при сортировке служб по возрастанию по значению свойства 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
Пример 8. Получение зависимых служб службы
В этом примере получаются службы, необходимые службе WinRM. Возвращается значение свойства ServicesDependedOn службы.
Get-Service "WinRM" -RequiredServices
Пример 9. Получение службы с помощью оператора конвейера
Этот пример получает службу WinRM на локальном компьютере. Строка имени службы, заключенная в кавычки, отправляется вниз конвейера Get-Service
.
"WinRM" | Get-Service
Параметры
-DependentServices
Указывает, что этот командлет получает только службы, зависящие от указанной службы.
Тип: | SwitchParameter |
Aliases: | DS |
Position: | Named |
Default value: | False |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-DisplayName
Указывает в виде строкового массива отображаемые имена служб, которые необходимо извлечь. Разрешено использовать подстановочные знаки.
Тип: | String[] |
Position: | Named |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | True |
-Exclude
Указывает как строковый массив, службу или службы, которые этот командлет исключает из операции.
Значение этого параметра определяет значение параметра Name. Введите элемент имени или шаблон, например s*
. Разрешено использовать подстановочные знаки.
Тип: | String[] |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | True |
-Include
Указывает как строковый массив, службу или службы, которые этот командлет включает в операцию. Значение этого параметра определяет значение параметра Name. Введите элемент имени или шаблон, например s*
. Разрешено использовать подстановочные знаки.
Тип: | String[] |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | True |
-InputObject
Указывает объекты ServiceController, представляющие извлекаемые службы. Введите переменную, которая содержит объекты, или команду или выражение, которое возвращает объекты. Объект службы можно передать в этот командлет.
Тип: | ServiceController[] |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-Name
Задает имена получаемых служб. Разрешено использовать подстановочные знаки.
Тип: | String[] |
Aliases: | ServiceName |
Position: | 0 |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | True |
-RequiredServices
Указывает, что этот командлет получает только службы, необходимые этой службе. Этот параметр получает значение свойства ServicesDependedOn службы.
Тип: | SwitchParameter |
Aliases: | SDO, ServicesDependedOn |
Position: | Named |
Default value: | False |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | True |
Входные данные
Объект службы можно передать в этот командлет.
Вы можете передать имя службы в этот командлет.
Выходные данные
Этот командлет возвращает объекты, представляющие службы на компьютере.
Примечания
PowerShell включает следующие псевдонимы для Get-Service
:
- Windows:
gsv
Этот командлет доступен только на платформах Windows.
Начиная с PowerShell 6.0, следующие свойства добавляются в объекты ServiceController: UserName, Description, DelayedAutoStart, BinaryPathName и StartupType.
Этот командлет может отображать службы только в том случае, если у текущего пользователя есть разрешение на их просмотр. Если этот командлет не отображает службы, возможно, у вас нет разрешения на их просмотр.
Чтобы найти имя службы и отображаемое имя каждой службы в системе, введите Get-Service
. Имена служб отображаются в столбце Name, а отображаемые имена — в столбце DisplayName.
Примечание.
Как правило, Get-Service
возвращает сведения о службах и не драйвере. Однако если указать имя драйвера, Get-Service
возвращает сведения о драйвере.
- Перечисление не включает службы драйверов устройств
- При указании подстановочного знака командлет возвращает только службы Windows
- Если указать имя или отображаемое имя , совпадающее с именем службы устройства, возвращается экземпляр устройства.
При сортировке по значению состояния службы отображаются перед Running
службами по возрастанию по значению Stopped
состояния. Свойство Status службы — это перечисленное значение, в котором имена состояний представляют целые значения. Порядок сортировки основан на целочисленном значении, а не на имени. Running
отображается раньше Stopped
, так как Stopped
имеет значение 1
и Running
имеет значение 4
. Дополнительные сведения см. в разделе ServiceControllerStatus.
Связанные ссылки
PowerShell