PowerShell: Lista dei processi

Primo esercizio:

Scrivere un programma che salvi un file “processi.txt” con i processi aventi id compreso tra 1000 e 2000.


<# UN PO' DI TEORIA PRIMA

Sintassi ciclo for:

for (init; condition; repeat) 
        {command_block}
------------------------------

Key

   init      Commands, separated by commas, to run before the loop begins.
             Typically used to initialize a variable with a starting value.

   condition If this evaluates to TRUE the for loop {command_block} runs
             when the loop has run once the condition is evaluated again

   repeat    Commands, separated by commas, to run each time the loop repeats.
------------------------------------------------------------------------------

Comparison Operators:
 -eq             Equal
 -ne             Not equal
 -ge             Greater than or equal
 -gt             Greater than
 -lt             Less than
 -le             Less than or equal
 -like           Wildcard comparison
 -notlike        Wildcard comparison
 -match          Regular expression comparison
 -notmatch       Regular expression comparison
 -replace        Replace operator
 -contains       Containment operator
 -notcontains    Containment operator
 -in             Like –contains, but with the operands reversed.(PowerShell 3.0)
 -notin          Like –notcontains, but with the operands reversed.(PowerShell 3.0)

#>

for ($i = 1000; $i -lt 2000; $i++) {
    # Associo a variabile process comando che mi prende tuti i processi con id tra 1000 e 2000
    # -ErrorAction SilentlyContinue => Usiamo questo comando per ignorare errore che genera
    # quando non trova un processo (es. Id 1354) se non lo trova, ignora errore e continua.
    $process = Get-Process -id $i -ErrorAction SilentlyContinue
   
    if ($process) {
        # esporto elenco processi esistenti tra 1000 e 2000 in file
        get-process -id $i | Out-File C:\Users\Cameretta\Desktop\processi.txt -Append
        # con "-Append" scrivo ogni volta sul file partendo dal fondo senza sovrascrivere ogni volta il contenuto
    } # fine if

} # fine for

Secondo esercizio:

Scrivere un programma in PowerShell che faccia una lista dei processi in esecuzione in ordine di utilizzo della CPU e scriva la lista in un file chiamato “processi – ” + data + “.txt”.

$a = Get-date -UFormat "%d_%m_%y"
$a = "processi-" + $a + ".txt"

Get-Process | Sort-Object -Property cpu -Descending | Select-Object -First 10

Terzo esercizio:

Scrivere un programma che elenchi i processi con id in ordine decrescente

Get-Process | Sort-Object Id -Descending

Quarto esercizio:

Visualizzare solo i primi 10 processi “SVCHOST” ordinati in base alla loro % di utilizzo della CPU

# Possiamo assegnare uno o più comandi ad una variabile mediante il simbolo "|" (pipe) e mostrare l'output successivamente
$processi = Get-Process svchost | Select-Object -First 10 | Sort-Object Cpu -Descending
# creo variabile = Visualizzo processi svchost | Seleziono primi 10 | Ordino i processi per uso cpu in ordine decrescente

# visualizzo contenuto variabile
$processi

You may also like...


x

Leggi anche...

PowerShell: Esercitazione sui servizi
CONSEGNA: - prendere servizi in base a status - contare n processi per ogni tipo - esportare ogni quey in 3 formati - zippare il...
PowerShell: altri esercizi
Vi riepiloghiamo altri esercizi molto utili per PS, fateci sapere con un commento o una reaction se vi piacciono! [code lang="powershell"] # ...
PowerShell: Cartelle e sottocartelle
Consegna: Ho un PATH rootHo un numero N in inputCrea n cartelleNumero M in inputM cartelle sotto la cartella N [code lang="powershell"] #...
powered by RelatedPosts