New-Service
Crea un nuovo servizio Windows.
Sintassi
New-Service
[-Name] <String>
[-BinaryPathName] <String>
[-DisplayName <String>]
[-Description <String>]
[-StartupType <ServiceStartMode>]
[-Credential <PSCredential>]
[-DependsOn <String[]>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Descrizione
Il cmdlet New-Service crea una nuova voce per un servizio Windows nel Registro di sistema e nel database del servizio. Un nuovo servizio richiede un file eseguibile che viene eseguito durante il servizio.
I parametri di questo cmdlet consentono di impostare il nome visualizzato, la descrizione, il tipo di avvio e le dipendenze del servizio.
Esempio
Esempio 1: Create un servizio
PS C:\> New-Service -Name "TestService" -BinaryPathName "C:\WINDOWS\System32\svchost.exe -k netsvcs"
Questo comando crea un servizio denominato TestService.
Esempio 2: Create un servizio che include descrizione, tipo di avvio e nome visualizzato
PS C:\> New-Service -Name "TestService" -BinaryPathName "C:\WINDOWS\System32\svchost.exe -k netsvcs" -DependsOn NetLogon -DisplayName "Test Service" -StartupType Manual -Description "This is a test service."
Questo comando crea un servizio denominato TestService. Usa i parametri di New-Service per specificare una descrizione, un tipo di avvio e un nome visualizzato per il nuovo servizio.
Esempio 3: Visualizzare il nuovo servizio
PS C:\> Get-WmiObject win32_service -Filter "name='testservice'"
ExitCode : 0
Name : testservice
ProcessId : 0
StartMode : Auto
State : Stopped
Status : OK
Questo comando usa Get-WmiObject per ottenere l'oggetto Win32_Service per il nuovo servizio. Questo oggetto include la modalità di avvio e la descrizione del servizio.
Esempio 4: Eliminare un servizio
PS C:\> sc.exe delete TestService
- or -
PS C:\> (Get-WmiObject win32_service -Filter "name='TestService'").delete()
Questo esempio illustra due modi per eliminare il servizio TestService. Il primo comando usa l'opzione di eliminazione di Sc.exe. Il secondo comando usa il metodo Delete degli oggetti Win32_Service restituiti da Get-WmiObject .
Parametri
-BinaryPathName
Specifica il percorso del file eseguibile per il servizio. Questo parametro è obbligatorio.
Type: | String |
Position: | 1 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Confirm
Richiede la conferma dell'utente prima di eseguire il cmdlet.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Credential
Specifica l'account utilizzato dal servizio come account di accesso al servizio.
Digitare un nome utente, ad esempio User01 o Domain01\User01, oppure immettere un oggetto PSCredential , ad esempio uno generato dal cmdlet Get-Credential. Se si digita un nome utente, questo cmdlet richiede una password.
Type: | PSCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DependsOn
Specifica i nomi di altri servizi da cui dipende il nuovo servizio. Per immettere più nomi di servizio, usare la virgola per separare i nomi.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Description
Specifica una descrizione del servizio.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DisplayName
Specifica un nome visualizzato per il servizio.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Name
Specifica il nome del server. Questo parametro è obbligatorio.
Type: | String |
Aliases: | ServiceName |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-StartupType
Imposta il tipo di avvio del servizio. I valori validi per questo parametro sono:
- manuale. Il servizio viene avviato solo manualmente, da un utente, tramite Service Control Manager o da un'applicazione.
- Automatico. Il servizio viene avviato o avviato dal sistema operativo all'avvio del sistema. Se un servizio avviato automaticamente dipende da un servizio avviato manualmente, anche il servizio avviato manualmente viene avviato automaticamente all'avvio del sistema.
- Disattivato. il servizio è disabilitato e non può essere avviato da un utente o da un'applicazione.
Il valore predefinito è Automatic.
Type: | ServiceStartMode |
Accepted values: | Automatic, Manual, Disabled |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
Mostra l'esito in caso di esecuzione del cmdlet. Il cmdlet non viene eseguito.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Input
None
Non è possibile inviare input tramite pipe a questo cmdlet.
Output
Questo cmdlet restituisce un oggetto che rappresenta il nuovo servizio.
Note
- Per eseguire questo cmdlet in Windows Vista e versioni successive del sistema operativo Windows, avviare Windows PowerShell usando l'opzione Esegui come amministratore.
- Per eliminare un servizio, usare Sc.exe o usare il cmdlet Get-WmiObject per ottenere l'oggetto Win32_Service che rappresenta il servizio e quindi usare il metodo Delete per eliminare il servizio. L'oggetto restituito Get-Service non dispone di un metodo delete.