Come ottenere un elenco dei processi simile a quello del Task Manager in PowerShell

Come ottenere un elenco dei processi simile a quello del Task Manager in PowerShell

Questo articolo illustra come possiamo ottenere metriche di performance dal nostro computer locale su PowerShell. Utilizziamo il cmdlet Get-Counter in PowerShell per recuperare i dati dei contatori di performance dal programma di monitoraggio delle performance su Windows.

Usa Get-Counter per ottenere un elenco di processi simile al Task Manager in PowerShell

Come accennato in precedenza, il cmdlet Get-Counter ci permetterà di elencare tutti i contatori di performance disponibili e monitorare e visualizzare i dati dai contatori. Il cmdlet funziona per sistemi locali e remoti.

Il cmdlet Get-Counter mostrerà per impostazione predefinita un insieme di contatori in un intervallo di un secondo. Poiché la maggior parte degli insiemi di contatori (metriche) è protetta da ACL (liste di controllo degli accessi), è consigliabile eseguire PowerShell come amministratore.

Get-Counter

get-counter

I contatori predefiniti elencati riguardano la rete, il processore e la memoria. Elenca anche alcuni dati sul disco rigido.

Per ottenere un elenco di tutti gli insiemi di contatori su un computer locale, eseguire il comando sottostante.

Get-Counter -ListSet *

set completi

Aggiungere il parametro ListSet e un asterisco (*) istruisce il cmdlet Get-Counter a recuperare un elenco di tutti i contatori impostati nel nostro computer. Nota il punto (.) nella colonna MachineName; questo rappresenta il nostro computer locale.

Possiamo scegliere un insieme di contatori e specificare l’intervallo di campionamento e il numero massimo di campioni. L’esempio sottostante recupererà metriche da tutti i processori sul nostro computer locale.

Il cmdlet recupererà i dati in un intervallo di tre secondi e visualizzerà quattro campioni.

Get-Counter -Counter "\Processor(_Total)\% Processor Time" -SampleInterval 3 -MaxSamples 4

metriche del processore

Nel comando sopra, abbiamo utilizzato il parametro Counter per fornire il percorso del contatore \Processor(_Total)\% Processor Time. Abbiamo poi impostato un intervallo di tre secondi con il parametro SampleInterval per il contatore specificato.

Il parametro MaxSamples stabilisce quattro come il numero massimo di volte in cui controlliamo il contatore. Se desideri recuperare campioni continui di un contatore specifico, utilizza il parametro -Continuous come illustrato di seguito:

Get-Counter -Counter "\Processor(_Total)\% Processor Time" -Continuous

Questo recupererà continuamente campioni in un intervallo di un secondo fino a quando non interrompi l’esecuzione. Puoi fare ciò premendo CTRL+C.

Puoi specificare gli intervalli con il parametro SampleInterval.

Puoi ordinare l’elenco in ordine alfabetico, come mostrato di seguito:

Get-Counter -ListSet * |
  Sort-Object -Property CounterSetName |
    Format-Table CounterSetName, CounterSetType -AutoSize

insiemi di contatori alfabetici

I risultati vengono inviati attraverso la pipeline al cmdlet Sort-Object. Il parametro Property stabilisce che gli oggetti CounterSet debbano essere ordinati per CounterSetName.

I risultati vengono quindi passati attraverso la pipeline a Format-Table. Il parametro AutoSize minimizza il troncamento regolando la larghezza delle colonne.

Se desideri ottenere un elenco di processi simile a quelli visualizzati nel task manager di Windows, puoi usare il comando sottostante:

Get-Counter "\Process(*)\Working Set - Private"

set di conteggio per i processi in esecuzione

Per ottenere il conteggio delle maniglie, esegui il comando sottostante:

Get-Counter "\Process(*)\Handle Count"

contatore di maniglie

In poche parole, il cmdlet Get-Counter è il comando da utilizzare quando vogliamo monitorare le metriche di performance di diversi insiemi di contatori sia in sistemi locali che remoti.

Ti piacciono i nostri tutorial? Iscriviti a DelftStack su YouTube per aiutarci a creare altre guide video di alta qualità. Iscriviti
Autore: John Wachira
John Wachira avatar John Wachira avatar

John is a Git and PowerShell geek. He uses his expertise in the version control system to help businesses manage their source code. According to him, Shell scripting is the number one choice for automating the management of systems.

LinkedIn