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>]
Описание
Этот командлет доступен только на платформе Windows.
Командлет Start-Service
отправляет начальное сообщение контроллеру службы Windows для каждой из указанных служб. Если служба уже запущена, сообщение игнорируется без ошибок. Вы можете указать службы по именам служб или отображаемым именам или использовать параметр InputObject для предоставления объекта службы, представляющего службы, которые необходимо запустить.
Примеры
Пример 1. Запуск службы с помощью его имени
В этом примере запускается служба EventLog на локальном компьютере. Параметр имени определяет службу по имени службы.
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
. Затем мы запустите службу. Без параметра PassThruStart-Service
не создает выходные данные. Оператор конвейера (|
) передает выходные данные объекта 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
изменяет тип запуска на вручную. Теперь мы можем повторно отправить команду 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, представляющий службу.
Примечания
PowerShell включает следующие псевдонимы для Start-Service
:
- Виндоус:
sasv
Этот командлет доступен только на платформах Windows.
- По умолчанию только члены группы администраторов могут запускать, останавливать, приостановить, возобновить или перезапустить службу. Если вы являетесь членом группы "Администраторы", необходимо запустить
Start-Service
из сеанса PowerShell с повышенными привилегиями. Используйте параметр запуска от имени администратора, чтобы запустить PowerShell. - Чтобы найти имена служб и отображаемые имена служб в системе, введите
Get-Service
. Имена служб отображаются в столбце имени, а отображаемые имена отображаются в столбце DisplayName. - Вы можете запускать только службы с типом запуска вручную, автоматического или автоматического (отложенного запуска). Вы не можете запустить службы с типом запуска "Отключено". Если команда
Start-Service
завершается ошибкой с сообщениемCannot start service \<service-name\> on computer
, используйтеGet-CimInstance
для поиска начального типа службы и, если требуется, используйте командлетSet-Service
для изменения типа запуска службы. - Некоторые службы, такие как журналы производительности и оповещения (SysmonLog), останавливаются автоматически, если они не работают. Когда PowerShell запускает службу, которая останавливается почти сразу, отображается следующее сообщение:
Service \<display-name\> start failed.
Связанные ссылки
PowerShell