Set-Service
Hiermee wordt een service gestart, gestopt en onderbroken en worden de eigenschappen ervan gewijzigd.
Syntaxis
Set-Service
[-Name] <String>
[-DisplayName <String>]
[-Credential <PSCredential>]
[-Description <String>]
[-StartupType <ServiceStartupType>]
[-Status <String>]
[-SecurityDescriptorSddl <String>]
[-Force]
[-PassThru]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-Service
[-InputObject] <ServiceController>
[-DisplayName <String>]
[-Credential <PSCredential>]
[-Description <String>]
[-StartupType <ServiceStartupType>]
[-SecurityDescriptorSddl <String>]
[-Status <String>]
[-Force]
[-PassThru]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Deze cmdlet is alleen beschikbaar op het Windows-platform.
De Set-Service
-cmdlet wijzigt de eigenschappen van een service, zoals de Status, Description, DisplayNameen StartupType.
Set-Service
kan een service starten, stoppen, opschorten of onderbreken. Als u een service wilt identificeren, voert u de naam van de service in of verzendt u een serviceobject. Of, stuur een servicenaam of serviceobject via de pijplijn naar Set-Service
.
Voorbeelden
Voorbeeld 1: Een weergavenaam wijzigen
In dit voorbeeld wordt de weergavenaam van een service gewijzigd. Gebruik Get-Service
om de oorspronkelijke weergavenaam weer te geven.
Set-Service -Name LanmanWorkstation -DisplayName "LanMan Workstation"
Set-Service
gebruikt de parameter Name om de naam van de service op te geven, LanmanWorkstation. De parameter DisplayName geeft de nieuwe weergavenaam op, LanMan Workstation.
Voorbeeld 2: Het opstarttype van services wijzigen
In dit voorbeeld ziet u hoe u het opstarttype van een service wijzigt.
Set-Service -Name BITS -StartupType Automatic
Get-Service BITS | Select-Object -Property Name, StartType, Status
Name StartType Status
---- --------- ------
BITS Automatic Running
Set-Service
gebruikt de parameter Name om de naam van de service op te geven, BITS-. De parameter StartupType stelt de service in op Automatic.
Get-Service
gebruikt de parameter Name om de BITS--service op te geven en het object omlaag in de pijplijn te verzenden.
Select-Object
gebruikt de parameter Eigenschap om de status van de BITS--service weer te geven.
Voorbeeld 3: De beschrijving van een service wijzigen
In dit voorbeeld wordt de beschrijving van de BITS-service gewijzigd en wordt het resultaat weergegeven.
De Get-CimInstance
cmdlet wordt gebruikt omdat het een Win32_Service-object retourneert dat de Beschrijving van de servicebevat.
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
verzendt het object in de pijplijn naar Format-List
en geeft de naam en beschrijving van de service weer. Ter vergelijking wordt de opdracht uitgevoerd voor en nadat de beschrijving is bijgewerkt.
Set-Service
gebruikt de parameter Name om de BITS--service op te geven. De parameter Description geeft de bijgewerkte tekst voor de beschrijving van de services op.
Voorbeeld 4: Een service starten
In dit voorbeeld wordt een service gestart.
Set-Service -Name WinRM -Status Running -PassThru
Status Name DisplayName
------ ---- -----------
Running WinRM Windows Remote Management (WS-Manag...
Set-Service
gebruikt de parameter Name om de service op te geven, WinRM-. De parameter Status gebruikt de waarde Actief om de dienst te starten. De parameter PassThru voert een ServiceController--object uit waarmee de resultaten worden weergegeven.
Voorbeeld 5: Een service onderbreken
In dit voorbeeld wordt de pijplijn gebruikt om de service te onderbreken.
Get-Service -Name Schedule | Set-Service -Status Paused
Get-Service
gebruikt de parameter Name om de service Schedule op te geven en verzendt het object omlaag in de pijplijn.
Set-Service
gebruikt de parameter Status om de service in te stellen op onderbroken.
Voorbeeld 6: Een service stoppen
In dit voorbeeld wordt een variabele gebruikt om een service te stoppen.
$S = Get-Service -Name Schedule
Set-Service -InputObject $S -Status Stopped
Get-Service
gebruikt de parameter Name om de service op te geven, Schedule. Het object wordt opgeslagen in de variabele, $S
.
Set-Service
gebruikt de InputObject parameter en geeft het object op dat is opgeslagen $S
. De parameter Status stelt de service in als gestopt.
Voorbeeld 7: Een service stoppen op een extern systeem
In dit voorbeeld wordt een service op een externe computer gestopt. Zie Invoke-Commandvoor meer informatie.
$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
vraagt om een gebruikersnaam en wachtwoord en slaat de referenties op in de variabele $Cred
.
Get-Service
gebruikt de parameter Name om de service Schedule op te geven. Het object wordt opgeslagen in de variabele, $S
.
Invoke-Command
gebruikt de parameter ComputerName om een externe computer op te geven. De parameter Credential gebruikt de variabele $Cred
om u aan te melden bij de computer. De ScriptBlock roept Set-Service
aan. De parameter InputObject geeft het serviceobject op dat is opgeslagen $S
. De parameter Status stelt de service in als gestopt.
Voorbeeld 8: Referenties van een service wijzigen
In dit voorbeeld worden de referenties gewijzigd die worden gebruikt voor het beheren van een service.
$credential = Get-Credential
Set-Service -Name Schedule -Credential $credential
Get-Credential
vraagt om een gebruikersnaam en wachtwoord en slaat de referenties op in de variabele $credential
.
Set-Service
gebruikt de parameter Name om de service Schedule op te geven. De parameter Credential gebruikt de variabele $credential
en werkt de service Schedule bij.
Voorbeeld 9: De SecurityDescriptor van een service wijzigen
In dit voorbeeld wordt de SecurityDescriptor van een service gewijzigd.
$SDDL = "D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;SU)"
Set-Service -Name "BITS" -SecurityDescriptorSddl $SDDL
De SecurityDescriptor- wordt opgeslagen in de $SDDL
variabele.
Set-Service
gebruikt de parameter Name om de BITS--service op te geven. De parameter SecurityDescriptorSddl gebruikt $SDDL
om de SecurityDescriptor- te wijzigen voor de BITS--service.
Voorbeeld 10: Het opstarttype instellen voor meerdere services
De cmdlet Set-Service
accepteert slechts één servicenaam tegelijk. U kunt echter meerdere services doorsluisen naar Set-Service
om de configuratie van meerdere services te wijzigen.
Get-Service SQLWriter,spooler |
Set-Service -StartupType Automatic -PassThru |
Select-Object Name, StartType
Name StartType
---- ---------
spooler Automatic
SQLWriter Automatic
Parameters
-Confirm
Vraagt u om bevestiging voordat u Set-Service
uitvoert.
Type: | SwitchParameter |
Aliassen: | cf |
Position: | Named |
Default value: | False |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Credential
Bepaalt het account dat door de service wordt gebruikt als het service-aanmeldingsaccount .
Typ een gebruikersnaam, zoals User01 of Domain01\User01, of voer een PSCredential--object in, zoals een object dat is gegenereerd door de Get-Credential
-cmdlet. Als u een gebruikersnaam typt, wordt u door deze cmdlet gevraagd om een wachtwoord.
Referenties worden opgeslagen in een PSCredential-object en het wachtwoord wordt opgeslagen als een SecureString-.
Notitie
Zie voor meer informatie over SecureString gegevensbeveiliging Hoe veilig is SecureString?.
Deze parameter is geïntroduceerd in PowerShell 6.0.
Type: | PSCredential |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Description
Hiermee geeft u een nieuwe beschrijving voor de service.
De servicebeschrijving wordt weergegeven in Computerbeheer, Services. De Description is geen eigenschap van het Get-Service
ServiceController-object. Als u de beschrijving van de service wilt zien, gebruikt u Get-CimInstance
die een Win32_Service-object retourneert dat de service vertegenwoordigt.
Type: | String |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-DisplayName
Hiermee geeft u een nieuwe weergavenaam voor de service op.
Notitie
Normaal gesproken werkt Set-Service
alleen op Windows-services en niet op stuurprogramma's. Als u echter de naam van een stuurprogramma opgeeft, kan Set-Service
het stuurprogramma aansturen.
Type: | String |
Aliassen: | DN |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Force
Hiermee geeft men de stopmodus van de dienst aan. Deze parameter werkt alleen wanneer -Status Stopped
wordt gebruikt. Indien ingeschakeld, stopt Set-Service
de afhankelijke services voordat de doelservice wordt gestopt. Standaard worden uitzonderingen gegenereerd wanneer andere actieve services afhankelijk zijn van de doelservice.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-InputObject
Hiermee specificeert u een ServiceController object dat de service vertegenwoordigt die moet worden gewijzigd. Voer een variabele in die het object bevat of typ een opdracht of expressie waarmee het object wordt opgehaald, zoals een Get-Service
opdracht. U kunt de pijplijn gebruiken om een serviceobject naar Set-Service
te verzenden.
Type: | ServiceController |
Position: | 0 |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | True |
Jokertekens accepteren: | False |
-Name
Geeft de servicenaam op van de service die moet worden gewijzigd. Jokertekens zijn niet toegestaan. U kunt de pijplijn gebruiken om een servicenaam naar Set-Service
te verzenden.
Notitie
Normaal gesproken werkt Set-Service
alleen op Windows-services en niet op stuurprogramma's. Als u echter de naam van een stuurprogramma opgeeft, kan Set-Service
het stuurprogramma aansturen.
Type: | String |
Aliassen: | ServiceName, SN |
Position: | 0 |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | True |
Jokertekens accepteren: | False |
-PassThru
Hiermee wordt een ServiceController--object geretourneerd dat de services vertegenwoordigt die zijn gewijzigd. Standaard genereert Set-Service
geen uitvoer.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-SecurityDescriptorSddl
Specificeert de SecurityDescriptor voor de service in de Sddl-indeling. Het account dat Set-Service
aanroept met deze parameter, moet de WRITE_DAC en WRITE_OWNER machtigingen hebben. Zie Service-beveiligings- en toegangsrechtenvoor meer informatie.
Type: | String |
Aliassen: | sd |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-StartupType
Hiermee wordt de startmodus van de service gespecificeerd.
De acceptabele waarden voor deze parameter zijn als volgt:
- Automatic - De service wordt gestart of is gestart door het besturingssysteem, bij het opstarten van het systeem. Als een automatisch gestarte service afhankelijk is van een handmatig gestarte service, wordt de handmatig gestarte service ook automatisch gestart bij het opstarten van het systeem.
- AutomaticDelayedStart - wordt kort na het opstarten van het systeem uitgevoerd.
- Uitgeschakeld: de service is uitgeschakeld en kan niet worden gestart door een gebruiker of toepassing.
- InvalidValue - Heeft geen effect. De cmdlet retourneert geen fout, maar het StartupType van de service wordt niet gewijzigd.
- Handmatige: de service wordt alleen handmatig gestart door een gebruiker, met behulp van Service Control Manager of door een toepassing.
Type: | ServiceStartupType |
Aliassen: | StartMode, SM, ST, StartType |
Geaccepteerde waarden: | Automatic, AutomaticDelayedStart, Disabled, InvalidValue, Manual |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Status
Specificeert de status voor de service.
De acceptabele waarden voor deze parameter zijn als volgt:
- onderbroken. Onderbreekt de service.
- draaien. Start de dienst.
- gestopt. Stopt de service.
Type: | String |
Geaccepteerde waarden: | Paused, Running, Stopped |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-WhatIf
Laat zien wat er zou gebeuren als Set-Service
wordt uitgevoerd. De cmdlet wordt niet uitgevoerd.
Type: | SwitchParameter |
Aliassen: | wi |
Position: | Named |
Default value: | False |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
Invoerwaarden
U kunt een serviceobject doorsluisen naar deze cmdlet.
U kunt een tekenreeks met een servicenaam doorsturen naar deze cmdlet.
Uitvoerwaarden
None
Deze cmdlet retourneert standaard geen uitvoer.
Wanneer u de parameter PassThru gebruikt, retourneert deze cmdlet een ServiceController--object.
Notities
Deze cmdlet is alleen beschikbaar op Windows-platforms.
Voor Set-Service
zijn verhoogde machtigingen vereist. Gebruik de optie Als administrator uitvoeren.
Set-Service
kan alleen services beheren wanneer de huidige gebruiker machtigingen heeft voor het beheren van services. Als een opdracht niet goed werkt, hebt u mogelijk niet de vereiste machtigingen.
Gebruik Get-Service
om de servicenaam of weergavenaam van een service te vinden. De servicenamen bevinden zich in de kolom Naam en de weergavenamen bevinden zich in de kolom DisplayName.