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>]
Описание
Командлет 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. Отображение активных в настоящее время служб
В этом примере отображаются только службы с состоянием Выполняется.
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
Указывает, что этот командлет получает только те службы, которые зависят от указанной службы.
Type: | SwitchParameter |
Aliases: | DS |
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 . Введите элемент имени или шаблон, например s*
. Разрешено использовать подстановочные знаки.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-Include
Указывает в качестве массива строк службу или службы, которые этот командлет включает в операцию. Значение этого параметра квалифифициирует параметр Name . Введите элемент имени или шаблон, например s*
. Разрешено использовать подстановочные знаки.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-InputObject
Задает объекты ServiceController , представляющие извлекаемую службу. Введите переменную, которая содержит объекты, или команду или выражение, которое возвращает объекты. Объект службы можно передать в этот командлет по конвейеру.
Type: | ServiceController[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Name
Задает имена получаемых служб. Разрешено использовать подстановочные знаки.
Type: | String[] |
Aliases: | ServiceName |
Position: | 0 |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | True |
-RequiredServices
Указывает, что этот командлет получает только те службы, которые требуются этой службе. Этот параметр получает значение свойства ServicesDependedOn службы.
Type: | SwitchParameter |
Aliases: | SDO, ServicesDependedOn |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
Входные данные
System.ServiceProcess.ServiceController, System.String
Вы можете передать объект службы или имя службы в этот командлет.
Выходные данные
Этот командлет возвращает объекты, представляющие службы на компьютере.
Примечания
Этот командлет доступен только на платформах Windows.
Начиная с PowerShell 6.0 к объектам ServiceController добавляются следующие свойства: UserName, Description, DelayedAutoStart, BinaryPathName и StartupType .
Вы также можете ссылаться на его Get-Service
встроенный псевдоним , gsv
. Подробнее см. в статье about_Aliases.
Этот командлет может отображать службы, только если у текущего пользователя есть разрешение на их просмотр. Если этот командлет не отображает службы, возможно, у вас нет разрешения на их просмотр.
Чтобы найти имя службы и отображаемое имя каждой службы в системе, введите Get-Service
. Имена служб отображаются в столбце Имя, а отображаемые имена — в столбце DisplayName .
При сортировке по возрастанию по значению свойства Status остановленные службы отображаются перед запущенными службами. Свойство Status службы является перечислимым значением, а имена состояний представляют целочисленные значения. Порядок сортировки основан на целочисленном значении, а не на имени. Значение Остановлено отображается раньше, так как значение Остановлено, так как Значение Остановлено равно 1, а Значение Running — 4. Дополнительные сведения см. в разделе ServiceControllerStatus.