Set-Service
Запускает, останавливает и приостанавливает службу и изменяет ее свойства.
Синтаксис
Set-Service
[-Name] <String>
[-DisplayName <String>]
[-Credential <PSCredential>]
[-Description <String>]
[-StartupType <ServiceStartupType>]
[-Status <String>]
[-Force]
[-PassThru]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-Service
[-InputObject] <ServiceController>
[-DisplayName <String>]
[-Credential <PSCredential>]
[-Description <String>]
[-StartupType <ServiceStartupType>]
[-Status <String>]
[-Force]
[-PassThru]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Описание
Командлет Set-Service
изменяет свойства службы, такие как Status, Description, DisplayName и StartupType. Set-Service
может запускать, останавливать, приостанавливать или приостанавливать службу. Чтобы определить службу, введите ее имя или отправьте объект службы. Или отправьте имя службы или объект службы по конвейеру в Set-Service
.
Примеры
Пример 1. Изменение отображаемого имени
В этом примере изменяется отображаемое имя службы. Чтобы просмотреть исходное отображаемое имя, используйте .Get-Service
Set-Service -Name LanmanWorkstation -DisplayName "LanMan Workstation"
Set-Service
использует параметр Name , чтобы указать имя службы LanmanWorkstation. Параметр DisplayName указывает новое отображаемое имя LanMan Workstation.
Пример 2. Изменение типа запуска служб
В этом примере показано, как изменить тип запуска службы.
Set-Service -Name BITS -StartupType Automatic
Get-Service BITS | Select-Object -Property Name, StartType, Status
Name StartType Status
---- --------- ------
BITS Automatic Running
Set-Service
использует параметр Name для указания имени службы BITS. Параметр StartupType задает для службы значение Автоматически.
Get-Service
использует параметр Name для указания службы BITS и отправляет объект по конвейеру. Select-Object
использует параметр Property для отображения состояния службы BITS .
Пример 3. Изменение описания службы
В этом примере изменяется описание службы BITS и отображается результат.
Командлет Get-CimInstance
используется, так как он возвращает объект Win32_Service , включающий описание службы.
Get-CimInstance Win32_Service -Filter 'Name = "BITS"' | Format-List Name, Description
Name : BITS
Description : Transfers files in the background using idle network bandwidth. If the service is
disabled, then any applications that depend on BITS, such as Windows Update or MSN
Explorer, will be unable to automatically download programs and other information.
Set-Service -Name BITS -Description "Transfers files in the background using idle network bandwidth."
Get-CimInstance Win32_Service -Filter 'Name = "BITS"' | Format-List Name, Description
Name : BITS
Description : Transfers files in the background using idle network bandwidth.
Get-CimInstance
отправляет объект вниз по конвейеру Format-List
в и отображает имя и описание службы. Для сравнения команда выполняется до и после обновления описания.
Set-Service
использует параметр Name для указания службы BITS . Параметр Description указывает обновленный текст для описания служб.
Пример 4. Запуск службы
В этом примере запускается служба.
Set-Service -Name WinRM -Status Running -PassThru
Status Name DisplayName
------ ---- -----------
Running WinRM Windows Remote Management (WS-Manag...
Set-Service
использует параметр Name для указания службы WinRM. Параметр Status использует значение Running для запуска службы. Параметр PassThru выводит объект ServiceController , который отображает результаты.
Пример 5. Приостановка службы
В этом примере конвейер используется для приостановки обслуживания.
Get-Service -Name Schedule | Set-Service -Status Paused
Get-Service
использует параметр Name для указания службы расписания и отправляет объект вниз по конвейеру. Set-Service
использует параметр Status , чтобы присвоить службе значение Приостановлено.
Пример 6. Остановка службы
В этом примере используется переменная для остановки службы.
$S = Get-Service -Name Schedule
Set-Service -InputObject $S -Status Stopped
Get-Service
использует параметр Name для указания службы Расписание. Объект хранится в переменной . $S
Set-Service
использует параметр InputObject и указывает сохраненный $S
объект . Параметр Status задает для службы значение Остановлено.
Пример 7. Остановка службы в удаленной системе
В этом примере служба останавливается на удаленном компьютере. Дополнительные сведения см. в разделе Invoke-Command.
$Cred = Get-Credential
$S = Get-Service -Name Schedule
Invoke-Command -ComputerName server01.contoso.com -Credential $Cred -ScriptBlock {
Set-Service -InputObject $S -Status Stopped
}
Get-Credential
запрашивает имя пользователя и пароль и сохраняет учетные данные в переменной $Cred
. Get-Service
использует параметр Name для указания службы расписания . Объект хранится в переменной . $S
Invoke-Command
использует параметр ComputerName для указания удаленного компьютера. Параметр Credential использует $Cred
переменную для входа на компьютер. ScriptBlock вызывает Set-Service
. Параметр InputObject указывает объект службы, хранящийся $S
. Параметр Status задает для службы значение Остановлено.
Пример 8. Изменение учетных данных службы
В этом примере изменяются учетные данные, используемые для управления службой.
$credential = Get-Credential
Set-Service -Name Schedule -Credential $credential
Get-Credential
запрашивает имя пользователя и пароль и сохраняет учетные данные в переменной $credential
. Set-Service
использует параметр Name для указания службы расписания . Параметр Credential использует переменную $credential
и обновляет службу расписания .
Параметры
-Confirm
Запрашивает подтверждение перед запуском Set-Service
.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Credential
Указывает учетную запись, используемую службой в качестве учетной записи входа в службу.
Введите имя пользователя, например User01 или Domain01\User01, или введите объект PSCredential , например созданный командлетом Get-Credential
. При вводе имени пользователя этот командлет запрашивает пароль.
Учетные данные хранятся в объекте PSCredential , а пароль хранится как SecureString.
Примечание
Дополнительные сведения о защите данных SecureString см. в разделе Как безопасно secure is SecureString?.
Этот параметр появился в PowerShell 6.0.
Type: | PSCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Description
Задает новое описание службы.
Описание службы отображается в разделе Управление компьютером, Службы. Описание не является свойством Get-Service
объекта ServiceController. Чтобы просмотреть описание службы, используйте Get-CimInstance
метод , возвращающий объект Win32_Service , представляющий службу.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DisplayName
Задает новое отображаемое имя службы.
Type: | String |
Aliases: | DN |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Force
Указывает режим остановки службы. Этот параметр работает только при -Status Stopped
использовании . Если этот параметр включен, Set-Service
останавливает зависимые службы до остановки целевой службы. По умолчанию исключения возникают, когда другие работающие службы зависят от целевой службы.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InputObject
Указывает объект ServiceController , представляющий изменяемую службу. Введите переменную, содержащую объект , или введите команду или выражение, которое получает объект, например Get-Service
команду. Конвейер можно использовать для отправки объекта службы в Set-Service
.
Type: | ServiceController |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Name
Указывает имя службы, которую нужно изменить. Подстановочные знаки запрещены. Вы можете использовать конвейер для отправки имени службы в Set-Service
.
Type: | String |
Aliases: | ServiceName, SN |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-PassThru
Возвращает объект ServiceController , представляющий измененные службы. По умолчанию Set-Service
не создает никаких выходных данных.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-StartupType
Указывает режим запуска службы.
Ниже приведены допустимые значения для этого параметра.
- Автоматически — служба запущена или запущена операционной системой при запуске системы. Если служба, запускаемая автоматически, зависит от службы, запускаемой вручную, запускаемая вручную служба также запускается автоматически при запуске системы.
- AutomaticDelayedStart — запускается вскоре после загрузки системы.
- Отключено — служба отключена и не может быть запущена пользователем или приложением.
- InvalidValue — не оказывает никакого влияния. Командлет не возвращает ошибку, но StartupType службы не изменяется.
- Вручную . Служба запускается только вручную, пользователем, с помощью диспетчера управления службами или приложением.
Type: | ServiceStartupType |
Aliases: | StartMode, SM, ST |
Accepted values: | Automatic, AutomaticDelayedStart, Disabled, InvalidValue, Manual |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Status
Указывает состояние службы.
Ниже приведены допустимые значения для этого параметра.
- Приостановлено. приостанавливает службу.
- Выполняется. запускает службу.
- Остановлен. останавливает службу.
Type: | String |
Accepted values: | Paused, Running, Stopped |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
Показывает, что произойдет при выполнении Set-Service
. Командлет не выполняется.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Входные данные
System.ServiceProcess.ServiceController, System.String
Конвейер можно использовать для отправки объекта службы или строки, содержащей имя службы, в Set-Service
.
Выходные данные
По умолчанию Set-Service
не возвращает никаких объектов. Используйте параметр PassThru для вывода объекта ServiceController .
Примечания
Этот командлет доступен только на платформах Windows.
Set-Service
требуются повышенные разрешения. Используйте параметр Запуск от имени администратора .
Set-Service
может управлять службами только в том случае, если у текущего пользователя есть разрешения на управление службами. Если команда работает неправильно, возможно, у вас нет необходимых разрешений.
Чтобы найти имя службы или отображаемое имя службы, используйте .Get-Service
Имена служб находятся в столбце Имя , а отображаемые имена — в столбце DisplayName .