Compartilhar via


Start-Service

Inicia um ou mais serviços interrompidos.

Sintaxe

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>]

Description

Esse cmdlet só está disponível na plataforma Windows.

O Start-Service cmdlet envia uma mensagem de início ao Controlador de Serviço do Windows para cada um dos serviços especificados. Se um serviço estiver sendo executado, a mensagem será ignorada sem erro. Você pode especificar os serviços por seus nomes de serviço ou nomes de exibição, ou pode usar o parâmetro InputObject para fornecer um objeto de serviço que represente os serviços que você deseja iniciar.

Exemplos

Exemplo 1: Iniciar um serviço usando seu nome

Este exemplo inicia o serviço EventLog no computador local. O parâmetro Name identifica o serviço por seu nome de serviço.

Start-Service -Name "eventlog"

Exemplo 2: Exibir informações sem iniciar um serviço

Este exemplo mostra o que ocorreria se você iniciasse os serviços que têm um nome de exibição que inclui "remoto".

Start-Service -DisplayName *remote* -WhatIf

O parâmetro DisplayName identifica os serviços pelo nome de exibição em vez do nome do serviço. O parâmetro WhatIf faz com que o cmdlet exiba o que aconteceria quando você executasse o comando, mas não fizesse alterações.

Exemplo 3: Iniciar um serviço e registrar a ação em um arquivo de texto

Este exemplo inicia o serviço WMI (Instrumentação de Gerenciamento do Windows) no computador e adiciona um registro da ação ao arquivo services.txt.

$s = Get-Service wmi
Start-Service -InputObject $s -PassThru | Format-List >> services.txt

Primeiro, usamos Get-Service para obter um objeto que representa o serviço WMI e armazená-lo na $s variável. Em seguida, iniciamos o serviço. Sem o parâmetro PassThru , Start-Service não cria nenhuma saída. O operador de pipeline (|) passa a saída do objeto para Start-Service o Format-List cmdlet para formatar o objeto como uma lista de suas propriedades. O operador de redirecionamento de acréscimo (>>) redireciona a saída para o arquivo services.txt. A saída é adicionada ao final do arquivo existente.

Exemplo 4: Iniciar um serviço desabilitado

Este exemplo mostra como iniciar um serviço quando o tipo de início do serviço é Desabilitado.

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

A primeira tentativa de iniciar o serviço Telnet (tlntsvr) falha. O Get-CimInstance comando mostra que a propriedade StartMode do serviço Tlntsvr está desabilitada. O Set-Service cmdlet altera o tipo de início para Manual. Agora, podemos reenviar o Start-Service comando. Desta vez, o comando terá êxito. Para verificar se o comando foi bem-sucedido, execute Get-Service.

Parâmetros

-Confirm

Solicita sua confirmação antes de executar o cmdlet.

Tipo:SwitchParameter
Aliases:cf
Cargo:Named
Valor padrão:False
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-DisplayName

Especifica os nomes de exibição dos serviços a serem iniciados. Caracteres curinga são permitidos.

Tipo:String[]
Cargo:Named
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:True

-Exclude

Especifica os serviços que esse cmdlet omite. O valor desse parâmetro qualifica o parâmetro Name . Insira um elemento ou padrão de nome, como s*. Caracteres curinga são permitidos.

Tipo:String[]
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:True

-Include

Especifica os serviços que esse cmdlet inicia. O valor desse parâmetro qualifica o parâmetro Name . Insira um elemento ou padrão de nome, como s*. Caracteres curinga são permitidos.

Tipo:String[]
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:True

-InputObject

Especifica objetos ServiceController que representam os serviços a serem iniciados. Insira uma variável que contém os objetos ou digite um comando ou uma expressão que obtém os objetos.

Tipo:ServiceController[]
Cargo:0
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:True
Aceitar caracteres curinga:False

-Name

Especifica os nomes de serviço para o serviço a ser iniciado.

O nome do parâmetro é opcional. Você pode usar Name ou seu alias, ServiceName, ou pode omitir o nome do parâmetro.

Tipo:String[]
Aliases:ServiceName
Cargo:0
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:True
Aceitar caracteres curinga:False

-PassThru

Retorna um objeto que representa o serviço. Por padrão, este cmdlet não gera saída.

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-WhatIf

Mostra o que aconteceria se o cmdlet fosse executado. O cmdlet não é executado.

Tipo:SwitchParameter
Aliases:wi
Cargo:Named
Valor padrão:False
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

Entradas

ServiceController

Você pode canalizar um objeto de serviço para esse cmdlet.

String

Você pode canalizar uma cadeia de caracteres que contém o nome do serviço para esse cmdlet.

Saídas

None

Por padrão, esse cmdlet não retorna nenhuma saída.

ServiceController

Quando você usa o parâmetro PassThru , esse cmdlet retorna um objeto ServiceController que representa o serviço.

Observações

O PowerShell inclui os seguintes aliases para Start-Service:

  • Windows:
    • sasv

Esse cmdlet só está disponível em plataformas Windows.

  • Start-Service O pode controlar os serviços somente se o usuário atual tiver permissão para fazer isso. Se um comando não funcionar corretamente, pode ser que você não tenha as permissões necessárias.
  • Para localizar os nomes de serviço e os nomes de exibição dos serviços em seu sistema, digite Get-Service. Os nomes de serviço aparecem na coluna Nome e os nomes de exibição aparecem na coluna DisplayName .
  • Você pode iniciar apenas os serviços que têm um tipo de início Manual, Automático ou Automático (Início Atrasado). Você não pode iniciar os serviços que têm um tipo de início Desabilitado. Se um Start-Service comando falhar com a mensagem Cannot start service \<service-name\> on computer, use Get-CimInstance para localizar o tipo de início do serviço e, se necessário, use o Set-Service cmdlet para alterar o tipo de início do serviço.
  • Alguns serviços, como Logs e Alertas de Desempenho (SysmonLog), param automaticamente se não tiverem trabalho a fazer. Quando o PowerShell inicia um serviço que se interrompe quase imediatamente, ele exibe a seguinte mensagem: Service \<display-name\> start failed.