Start-Service

Spustí jednu nebo více zastavených služeb.

Syntax

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

Tato rutina je dostupná jenom na platformě Windows.

Rutina Start-Service odešle úvodní zprávu kontroleru služeb systému Windows pro každou ze zadaných služeb. Pokud už je služba spuštěná, zpráva se ignoruje bez chyby. Služby můžete zadat podle jejich názvů služeb nebo zobrazované názvy, nebo můžete pomocí parametru InputObject zadat objekt služby, který představuje služby, které chcete spustit.

Příklady

Příklad 1: Spuštění služby pomocí jejího názvu

Tento příklad spustí službu EventLog na místním počítači. Parametr Name identifikuje službu podle názvu služby.

Start-Service -Name "eventlog"

Příklad 2: Zobrazení informací bez spuštění služby

Tento příklad ukazuje, co by se stalo, když jste spustili služby, které mají zobrazovaný název, který obsahuje "remote".

Start-Service -DisplayName *remote* -WhatIf

Parametr DisplayName identifikuje služby podle jejich zobrazovaného názvu místo názvu služby. Parametr WhatIf způsobí, že rutina zobrazí, co by se stalo při spuštění příkazu, ale neprovádí změny.

Příklad 3: Spuštění služby a zaznamenání akce v textovém souboru

Tento příklad spustí službu WMI (Windows Management Instrumentation) v počítači a přidá záznam akce do services.txt souboru.

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

Nejprve použijeme Get-Service k získání objektu, který představuje službu WMI, a uložíme ho $s do proměnné. Dále spustíme službu. Bez parametru Start-Service PassThru nevytváří žádný výstup. Operátor kanálu (|) předá výstup Start-Service objektu rutině Format-List , aby objekt naformátovala jako seznam jeho vlastností. Operátor přesměrování připojení (>>) přesměruje výstup do services.txt souboru. Výstup se přidá na konec existujícího souboru.

Příklad 4: Spuštění zakázané služby

Tento příklad ukazuje, jak spustit službu, když je typ spuštění služby zakázán.

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

První pokus o spuštění služby Telnet (tlntsvr) selže. Příkaz Get-CimInstance ukazuje, že Vlastnost StartMode služby Tlntsvr je zakázáno. Rutina Set-Service změní typ spuštění na Ruční. Teď můžeme příkaz znovu odeslat Start-Service . Tentokrát příkaz proběhne úspěšně. Chcete-li ověřit, zda byl příkaz úspěšný, spusťte Get-Servicepříkaz .

Parametry

-Confirm

Před spuštěním rutiny zobrazí výzvu k potvrzení.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DisplayName

Určuje zobrazované názvy služeb, které se mají spustit. Jsou povoleny zástupné znaky.

Type:String[]
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:True

-Exclude

Určuje služby, které tato rutina vynechá. Hodnota tohoto parametru kvalifikuje parametr Name . Zadejte element nebo vzor názvu, například s*. Jsou povoleny zástupné znaky.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-Include

Určuje služby, které tato rutina spustí. Hodnota tohoto parametru kvalifikuje parametr Name . Zadejte element nebo vzor názvu, například s*. Jsou povoleny zástupné znaky.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-InputObject

Určuje ServiceController objekty představující služby, které se mají spustit. Zadejte proměnnou, která obsahuje objekty, nebo zadejte příkaz nebo výraz, který objekty získá.

Type:ServiceController[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Name

Určuje názvy služeb, které se mají spustit.

Název parametru je volitelný. Můžete použít Název nebo jeho alias, ServiceName nebo můžete vynechat název parametru.

Type:String[]
Aliases:ServiceName
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-PassThru

Vrátí objekt, který představuje službu. Ve výchozím nastavení tato rutina negeneruje žádný výstup.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Zobrazuje, co by se stalo při spuštění rutiny. Rutina není spuštěna.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Vstupy

ServiceController

Objekt služby můžete do této rutiny převést.

String

Do této rutiny můžete zamísit řetězec, který obsahuje název služby.

Výstupy

None

Ve výchozím nastavení tato rutina nevrací žádný výstup.

ServiceController

Pokud použijete parametr PassThru , vrátí tato rutina objekt ServiceController představující službu.

Poznámky

PowerShell obsahuje následující aliasy pro Start-Service:

  • Windows:
    • sasv

Tato rutina je dostupná jenom na platformách Windows.

  • Start-Service může řídit služby pouze v případě, že má aktuální uživatel oprávnění k tomu. Pokud příkaz nefunguje správně, možná nemáte požadovaná oprávnění.
  • Chcete-li najít názvy služeb a zobrazované názvy služeb v systému, zadejte Get-Service. Názvy služeb se zobrazí ve sloupci Název a zobrazované názvy se zobrazí ve sloupci DisplayName .
  • Můžete spustit pouze služby, které mají typ spuštění Ruční, Automatické nebo Automatické (Zpožděné spuštění). Služby, které mají typ Spuštění zakázáno, nelze spustit. Start-Service Pokud příkaz selže se zprávou Cannot start service \<service-name\> on computer, použijte Get-CimInstance k vyhledání typu spuštění služby a pokud potřebujete, pomocí rutiny Set-Service změňte typ spuštění služby.
  • Některé služby, jako jsou protokoly výkonu a výstrahy (SysmonLog), se automaticky zastaví, pokud nemají žádnou práci. Když PowerShell spustí službu, která se téměř okamžitě zastaví, zobrazí následující zprávu: Service \<display-name\> start failed.