Ottiene i servizi in un computer locale o remoto.

Sintassi

Get-Service [[-Name] <string[]>] [-ComputerName <string[]>] [-DependentServices] [-Exclude <string[]>] [-Include <string[]>] [-RequiredServices] [<CommonParameters>]

Get-Service -DisplayName <string[]> [-ComputerName <string[]>] [-DependentServices] [-Exclude <string[]>] [-Include <string[]>] [-RequiredServices] [<CommonParameters>]

Get-Service [-InputObject <ServiceController[]>] [-ComputerName <string[]>] [-DependentServices] [-Exclude <string[]>] [-Include <string[]>] [-RequiredServices] [<CommonParameters>]

Descrizione

Il cmdlet Get-Service ottiene gli oggetti che rappresentano i servizi in un computer locale o remoto, inclusi i servizi in esecuzione e quelli interrotti.

È possibile indicare a Get-Service di ottenere solo determinati servizi specificando il nome o il nome visualizzato dei servizi oppure è possibile reindirizzare gli oggetti servizio a Get-Service.

Parametri

-ComputerName <string[]>

Ottiene i servizi in esecuzione nei computer specificati. Il valore predefinito è il computer locale.

Digitare il nome NetBIOS, un indirizzo IP o un nome di dominio completo di un computer remoto. Per specificare il computer locale, digitare il nome del computer, un punto (.) o "localhost".

Questo parametro non si basa sulla comunicazione remota di Windows PowerShell. È possibile utilizzare il parametro ComputerName di Get-Service anche se il computer non è configurato per l'esecuzione di comandi remoti.

Obbligatorio?

false

Posizione?

named

Valore predefinito

Localhost

Accettare input da pipeline?

true (ByPropertyName)

Accettare caratteri jolly?

false

-DependentServices

Ottiene solo i servizi che dipendono dal servizio specificato.

Per impostazione predefinita, Get-Service ottiene tutti i servizi.

Obbligatorio?

false

Posizione?

named

Valore predefinito

False

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-DisplayName <string[]>

Specifica i nomi visualizzati dei servizi da recuperare. È consentito l'utilizzo di caratteri jolly. Per impostazione predefinita, Get-Service ottiene tutti i servizi nel computer.

Obbligatorio?

true

Posizione?

named

Valore predefinito

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-Exclude <string[]>

Omette i servizi specificati. Il valore di questo parametro qualifica il parametro Name. Immettere un criterio o un elemento del nome, ad esempio "s*". È consentito l'utilizzo di caratteri jolly.

Obbligatorio?

false

Posizione?

named

Valore predefinito

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-Include <string[]>

Recupera unicamente i servizi specificati. Il valore di questo parametro qualifica il parametro Name. Immettere un criterio o un elemento del nome, ad esempio "s*". È consentito l'utilizzo di caratteri jolly.

Obbligatorio?

false

Posizione?

named

Valore predefinito

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-InputObject <ServiceController[]>

Specifica gli oggetti ServiceController che rappresentano i servizi da recuperare. Immettere una variabile contenente gli oggetti oppure digitare un comando o un'espressione che consente di ottenere gli oggetti. È inoltre possibile reindirizzare un oggetto servizio a Get-Service.

Obbligatorio?

false

Posizione?

named

Valore predefinito

Accettare input da pipeline?

true (ByValue)

Accettare caratteri jolly?

false

-Name <string[]>

Specifica i nomi dei servizi da recuperare. È consentito l'utilizzo di caratteri jolly. Per impostazione predefinita, Get-Service ottiene tutti i servizi nel computer.

Obbligatorio?

false

Posizione?

1

Valore predefinito

Accettare input da pipeline?

true (ByValue, ByPropertyName)

Accettare caratteri jolly?

true

-RequiredServices

Ottiene solo i servizi richiesti da tale servizio.

Questo parametro ottiene il valore della proprietà ServicesDependedOn del servizio. Per impostazione predefinita, Get-Service ottiene tutti i servizi.

Obbligatorio?

false

Posizione?

named

Valore predefinito

False

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

<CommonParameters>

Questo cmdlet supporta i parametri comuni -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer e -OutVariable. Per ulteriori informazioni, vedere about_Commonparameters.

Input e output

Il tipo di input è il tipo degli oggetti che è possibile reindirizzare al cmdlet. Il tipo restituito è il tipo degli oggetti restituiti dal cmdlet.

Input

System.ServiceProcess.ServiceController, System.String

È possibile reindirizzare un oggetto servizio o un nome servizio a Get-Service.

Output

System.ServiceProcess.ServiceController

Get-Service restituisce oggetti che rappresentano i servizi disponibili nel computer.

Note

È inoltre possibile fare riferimento a Get-Service tramite il relativo alias predefinito "gsv". Per ulteriori informazioni, vedere about_Aliases.

Get-Service consente di visualizzare servizi solo se l'utente corrente dispone delle autorizzazioni per vederli. Se i servizi non vengono visualizzati da Get-Service, è possibile che non si disponga delle autorizzazioni per vederli.

Per trovare il nome del servizio e il nome visualizzato di ogni servizio nel sistema, digitare "get-service". I nomi dei servizi vengono visualizzati nella colonna Name e i nomi visualizzati vengono elencati nella colonna DisplayName.

Quando si ordina in ordine crescente in base al valore di stato, i servizi "Stopped" vengono visualizzati prima dei "Running". La proprietà Status di un servizio è un valore enumerato nel quale i nomi degli stati rappresentano valori interi. L'ordinamento è basato sul valore intero, non sul nome. "Running" viene visualizzato prima di "Stopped" poiché "Stopped" ha un valore di "1" mentre "Running" ha un valore di "4".

Esempio 1

C:\PS>get-service

Descrizione
-----------
Con questo comando vengono recuperati tutti i servizi nel sistema come se si digitasse "get-service *". Nella visualizzazione predefinita sono elencati lo stato, il nome e il nome visualizzato di ogni servizio.






Esempio 2

C:\PS>get-service wmi*

Descrizione
-----------
Con questo comando vengono recuperati servizi il cui nome inizia con "WMI" (acronimo di Strumentazione gestione Windows).






Esempio 3

C:\PS>get-service -displayname *network*

Descrizione
-----------
Con questo comando vengono visualizzati i servizi il cui nome visualizzato inizia con la parola 
"network". La ricerca del nome visualizzato consente di trovare tutti i servizi relativi alla rete, anche se il nome del servizio non include "Net", ad esempio xmlprov, il servizio Provisioning di rete.






Esempio 4

C:\PS>get-service -name win* -exclude winrm

Descrizione
-----------
Con questi comandi vengono ottenuti solo i servizi il cui nome inizia con "win", tranne il servizio WinRM.






Esempio 5

C:\PS>get-service | where-object {$_.Status -eq "Running"}

Descrizione
-----------
Con questo comando vengono visualizzati solo i servizi attualmente in esecuzione. Viene utilizzato il cmdlet Get-Service per ottenere tutti i servizi disponibili nel computer. L'operatore pipeline (|) passa i risultati al cmdlet Where-Object, tramite il quale vengono selezionati solo i servizi la cui proprietà Status equivale a "Running".

Status è l'unica proprietà degli oggetti servizio. Per visualizzare tutte le proprietà, digitare "get-service | get-member".






Esempio 6

C:\PS>get-service -computername Server02

Descrizione
-----------
Con questo comando vengono ottenuti i servizi nel computer remoto Server02. 

Poiché il parametro ComputerName di Get-Service non utilizza la comunicazione remota di Windows PowerShell, è possibile utilizzare questo parametro anche se il computer non è configurato per la comunicazione remota di Windows PowerShell.






Esempio 7

C:\PS>get-service | where-object {$_.DependentServices} | format-list -property Name, DependentServices, @{Label="NoOfDependentS
ervices"; Expression={$_.dependentservices.count}} 

Name                  : AudioEndpointBuilder
DependentServices     : {AudioSrv}
NoOfDependentServices : 1

Name                  : Dhcp
DependentServices     : {WinHttpAutoProxySvc}
NoOfDependentServices : 1
...

Descrizione
-----------
Questi comandi elencano i servizi presenti nel computer con servizi dipendenti. 

Nel primo comando viene utilizzato il cmdlet Get-Service per ottenere i servizi disponibili nel computer. Un operatore pipeline (|) invia i servizi al cmdlet Where-Object che seleziona i servizi la cui proprietà DependentServices non è null. 

I risultati vengono inviati al cmdlet Format-List da un altro operatore pipeline. Nel comando viene utilizzato il parametro Property per visualizzare il nome del servizio, il nome dei servizi dipendenti e una proprietà calcolata che visualizza il numero di servizi dipendenti di ogni servizio.






Esempio 8

C:\PS>C:\PS> get-service s* | sort-object status 

Status   Name               DisplayName
------   ----               -----------
Stopped  stisvc             Windows Image Acquisition (WIA)
Stopped  SwPrv              MS Software Shadow Copy Provider
Stopped  SysmonLog          Performance Logs and Alerts
Running  Spooler            Print Spooler
Running  srservice          System Restore Service
Running  SSDPSRV            SSDP Discovery Service
Running  ShellHWDetection   Shell Hardware Detection
Running  Schedule           Task Scheduler
Running  SCardSvr           Smart Card
Running  SamSs              Security Accounts Manager
Running  SharedAccess       Windows Firewall/Internet Connectio...
Running  SENS               System Event Notification
Running  seclogon           Secondary Logon

C:\PS> get-service s* | sort-object status -descending

Status   Name               DisplayName
------   ----               -----------
Running  ShellHWDetection   Shell Hardware Detection
Running  SharedAccess       Windows Firewall/Internet Connectio...
Running  Spooler            Print Spooler
Running  SSDPSRV            SSDP Discovery Service
Running  srservice          System Restore Service
Running  SCardSvr           Smart Card
Running  SamSs              Security Accounts Manager
Running  Schedule           Task Scheduler
Running  SENS               System Event Notification
Running  seclogon           Secondary Logon
Stopped  SysmonLog          Performance Logs and Alerts
Stopped  SwPrv              MS Software Shadow Copy Provider
Stopped  stisvc             Windows Image Acquisition (WIA)

Descrizione
-----------
Questo comando mostra che quando si ordinano in ordine crescente i servizi in base al valore della proprietà Status, i servizi arrestati vengono visualizzati prima dei servizi in esecuzione. Questa situazione è dovuta al fatto che il valore di Status è un'enumerazione in cui "Stopped" ha valore "1" e "Running" ha valore 4. 

Per elencare prima i servizi in esecuzione, utilizzare il parametro Descending del cmdlet Sort-Object.






Esempio 9

C:\PS>get-service -name winrm -computername localhost, Server01, Server02  | format-table -property MachineName, Status, Name, DisplayName -auto

MachineName    Status  Name  DisplayName
------------   ------  ----  -----------
localhost      Running WinRM Windows Remote Management (WS-Management)
Server01       Running WinRM Windows Remote Management (WS-Management)
Server02       Running WinRM Windows Remote Management (WS-Management)

Descrizione
-----------
In questo comando viene utilizza il cmdlet Get-Service per eseguire un comando "Get-Service Winrm" su due computer remoti e sul computer locale ("localhost"). 

Il comando Get-Service viene eseguito in computer remoti e i risultati vengono restituiti al computer locale. Verrà quindi utilizzato un operatore pipeline (|) per inviare i risultati al cmdlet Format-Table, che formatterà i servizi in una tabella. Nel comando Format-Table viene utilizzato il parametro Property per specificare le proprietà visualizzate nella tabella, inclusa la proprietà MachineName.






Esempio 10

C:\PS>get-service winrm -requiredServices

Descrizione
-----------
Questo comando ottiene i servizi richiesti dal servizio WinRM. 

Il comando restituisce il valore della proprietà ServicesDependedOn del servizio.






Esempio 11

C:\PS>"winrm" | get-service

Descrizione
-----------
Questo comando ottiene il servizio WinRM nel computer locale. In questo esempio viene illustrato che è possibile reindirizzare una stringa del nome del servizio (racchiusa tra virgolette) a Get-Service.






Vedere anche




Argomenti della Guida