Start-Service
Запускает одну или несколько остановленных служб.
Синтаксис
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>]
Описание
Командлет Start-Service
отправляет начальное сообщение контроллеру службы Windows для каждой из указанных служб. Если служба уже запущена, сообщение пропускается без ошибок. Вы можете указать службы по именам служб или отображаемым именам или использовать параметр InputObject для предоставления объекта службы, представляющего службы, которые необходимо запустить.
Примеры
Пример 1. Запуск службы с помощью его имени
В этом примере запускается служба EventLog на локальном компьютере. Параметр Name определяет службу по имени службы.
Start-Service -Name "eventlog"
Пример 2. Отображение сведений без запуска службы
В этом примере показано, что произойдет при запуске служб, имеющих отображаемое имя, включающее "remote".
Start-Service -DisplayName *remote* -WhatIf
Параметр DisplayName определяет службы по отображаемой имени вместо имени службы. Параметр WhatIf приводит к отображению командлета того, что произойдет при выполнении команды, но не вносит изменения.
Пример 3. Запуск службы и запись действия в текстовом файле
В этом примере запускается служба инструментария управления Windows (WMI) на компьютере и добавляет запись действия в файл services.txt.
$s = Get-Service wmi
Start-Service -InputObject $s -PassThru | Format-List >> services.txt
Сначала мы используем Get-Service
для получения объекта, представляющего службу WMI, и сохраняем ее в переменной $s
. Затем мы запустите службу. Без параметра Start-Service
PassThru не создает выходные данные. Оператор конвейера передает|
выходные данные 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
показывает, что свойство StartMode службы Tlntsvr отключено. Командлет Set-Service
изменяет тип запуска на Manual. Теперь мы можем повторно отправить Start-Service
команду. В этот раз команда будет успешно выполнена. Чтобы убедиться, что команда выполнена успешно, выполните команду Get-Service
.
Параметры
-Confirm
Запрос подтверждения перед выполнением командлета.
Тип: | SwitchParameter |
Aliases: | cf |
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: | 0 |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-Name
Указывает имена службы запускаемой службы.
Имя параметра является необязательным. Вы можете использовать имя или его псевдоним, ServiceName или вы можете опустить имя параметра.
Тип: | String[] |
Aliases: | ServiceName |
Position: | 0 |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-PassThru
Возвращает объект, представляющий службу. По умолчанию этот командлет не создает выходные данные.
Тип: | SwitchParameter |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-WhatIf
Показывает, что произойдет при запуске командлета. Командлет не выполняется.
Тип: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
Входные данные
Объект службы можно передать в этот командлет.
Можно передать строку, содержащую имя службы в этот командлет.
Выходные данные
None
По умолчанию этот командлет не возвращает выходные данные.
При использовании параметра PassThru этот командлет возвращает объект ServiceController , представляющий службу.
Примечания
Windows PowerShell включает следующие псевдонимы для Start-Service
:
sasv
Start-Service
может управлять службами, только если у текущего пользователя есть разрешение на это. Если команда работает неправильно, возможно, у вас нет необходимых разрешений.Чтобы найти имена служб и отображаемые имена в системе, введите
Get-Service
. Имена служб отображаются в столбце Name, а отображаемые имена — в столбце DisplayName.Вы можете запускать только службы с типом запуска вручную, автоматического или автоматического (отложенного запуска). Вы не можете запустить службы с типом запуска "Отключено".
Start-Service
Если команда завершается ошибкой с сообщениемCannot start service \<service-name\> on computer
, используйтеGet-CimInstance
для поиска начального типа службы и, если необходимо, используйтеSet-Service
командлет для изменения типа запуска службы.Некоторые службы, такие как журналы производительности и оповещения (SysmonLog), останавливаются автоматически, если они не работают. Когда PowerShell запускает службу, которая останавливается почти сразу, отображается следующее сообщение:
Service \<display-name\> start failed.
Связанные ссылки
PowerShell