Guida ai principali comandi PowerShell per Windows

I comandi PowerShell rappresentano uno strumento fondamentale per chi desidera gestire, automatizzare e personalizzare Windows da riga di comando. Conosciuti come cmdlet, questi comandi permettono di eseguire numerose operazioni su file, cartelle, sistemi e reti, spesso in modo più efficace rispetto al classico Prompt dei comandi MS-DOS.

In questa guida scoprirai i comandi PowerShell più utilizzati, le loro abbreviazioni (alias) e le differenze tra cmdlet e aliased, offrendo una panoramica utile sia ai principianti che a chi già lavora nel mondo IT.

In breve

  • I comandi PowerShell automatizzano e semplificano la gestione di Windows.
  • I cmdlet sono comandi unici, spesso disponibili anche tramite alias più brevi.
  • Alcuni comandi possono essere richiamati sia per alias che come cmdlet, altri solo come cmdlet.

Scopri anche: Guida al registro di sistema di Windows

Indice

Cos’è PowerShell e a cosa serve

comandi powershell

PowerShell è una console progettata da Microsoft nel 2006 per facilitare la gestione avanzata dei sistemi operativi Windows. Grazie ai suoi cmdlet, PowerShell consente di automatizzare attività complesse, amministrare le risorse di sistema e interagire con componenti interni o esterni con il supporto di COM (Component Object Model) e WMI (Windows Management Instrumentation). La sua flessibilità lo rende indicato sia per semplici operazioni quotidiane che per script e flussi di lavoro più articolati.

Come aprire PowerShell

Avviare PowerShell è facilissimo sui sistemi Windows 7, Windows 10 e Windows 11. Se utilizzi una versione precedente, come Windows XP o Vista, puoi affidarti alle versioni iniziali di PowerShell (1.0 o 1.0 RC2). Nei sistemi più recenti, basta seguire questi semplici passaggi:

  • Cerca “powershell” nel menu Start.
  • Premi Invio per aprire la finestra del terminale PowerShell.

PowerShell non è disponibile nelle primissime versioni di Windows, dove bisogna utilizzare il prompt dei comandi classico.

Come chiudere PowerShell

Per uscire da PowerShell, puoi procedere in due modi rapidi:

  • Cliccare sulla “X” in alto a destra della finestra.
  • Digitare il comando exit e premere Invio su tastiera.

Possibilità e integrazione

PowerShell non si limita all’interfaccia standalone: può essere integrato all’interno di applicazioni per sfruttare le sue funzionalità di amministrazione e scripting. La sua presenza di default su Windows 7, 10 e 11 lo rende un alleato prezioso per chiunque voglia avere un controllo più profondo su Windows.

Comandi PowerShell: alias e cmdlet

PowerShell offre la possibilità di utilizzare alcuni comandi sia con il loro nome esteso (cmdlet) che con un alias, ovvero una versione abbreviata più pratica durante la digitazione. Ecco i principali comandi utili da conoscere:

  • Add-Content (alias: ac) – Aggiunge contenuto, come testo, a un file.
  • Get-Content (alias: cat, gc, type) – Visualizza il contenuto di un file.
  • Set-Location (alias: cd, chdir) – Cambia la cartella corrente.
  • Clear-Content (alias: clc) – Cancella il contenuto di un file senza eliminare il file.
  • Clear-Host (alias: clear, cls) – Pulisce la schermata della console.
  • Clear-Item (alias: cli) – Cancella il contenuto di un oggetto.
  • Clear-ItemProperty (alias: clp) – Cancella il valore di una proprietà.
  • Clear-Variable (alias: clv) – Cancella il valore di una variabile.
  • Connect-PSSession (alias: cnsn) – Riconnette una sessione PowerShell disconnessa.
  • Compare-Object (alias: compare, diff) – Confronta due oggetti.
  • Copy-Item (alias: copy, cp, cpi) – Copia file o cartelle.
  • Invoke-WebRequest (alias: curl, iwr) – Recupera contenuti da una pagina web.
  • Disable-PSBreakpoint (alias: dbp) – Disattiva breakpoint nella console PowerShell.
  • Remove-Item (alias: del, erase, rd, ri, rm, rmdir) – Elimina file o cartelle.
  • Disconnect-PSSession (alias: dnsn) – Disconnette una sessione PowerShell.
  • Enable-PSBreakpoint (alias: ebp) – Attiva breakpoint nella console PowerShell.
  • Write-Output (alias: echo) – Mostra o invia output alla pipeline.
  • Export-Csv (alias: epcsv) – Esporta dati in formato CSV.
  • Enter-PSSession (alias: etsn) – Avvia una sessione remota.
  • Exit-PSSession (alias: exsn) – Chiude una sessione remota.
  • ForEach-Object (alias: foreach) – Esegue comandi su ogni oggetto ricevuto.
  • Format-Table (alias: ft) – Mostra l’output in formato tabella.
  • Get-Alias (alias: gal) – Mostra gli alias disponibili.
  • Get-ChildItem (alias: ls, dir, gci) – Elenca file e cartelle.
  • Get-Command (alias: gcm) – Mostra i comandi disponibili.
  • Get-History (alias: ghy, h, history) – Mostra la cronologia dei comandi.
  • Get-Job (alias: gjb) – Mostra i job in background.
  • Get-Location (alias: gl, pwd) – Mostra la directory corrente.
  • Get-Member (alias: gm) – Mostra proprietà e metodi di un oggetto.
  • Get-ItemProperty (alias: gp) – Mostra le proprietà di un oggetto.
  • Get-Process (alias: gps, ps) – Mostra i processi attivi.
  • Get-PSSnapIn (alias: gsnp) – Mostra gli snap-in PowerShell installati.
  • Get-Service (alias: gsv) – Mostra i servizi disponibili o in esecuzione.
  • Get-Unique (alias: gu) – Restituisce valori unici da un elenco ordinato.
  • Invoke-Command (alias: icm) – Esegue comandi locali o remoti.
  • Invoke-Expression (alias: iex) – Esegue un comando o un’espressione.
  • Invoke-History (alias: ihy) – Esegue un comando già presente nella cronologia.
  • Import-Alias (alias: ipal) – Importa alias da un file.
  • Import-Module (alias: ipmo) – Importa un modulo PowerShell.
  • Invoke-RestMethod (alias: irm) – Esegue richieste verso API REST.
  • Stop-Process (alias: kill) – Termina un processo specificato.
  • Out-Printer (alias: lp) – Invia dati alla stampante.
  • help (alias: man) – Mostra informazioni sui comandi PowerShell.
  • mkdir (alias: md) – Crea una nuova directory.
  • Measure-Object (alias: measure) – Conta oggetti, righe, parole o caratteri.
  • Move-Item (alias: mi, move, mv) – Sposta file o cartelle.
  • New-Alias (alias: nal) – Crea un nuovo alias.
  • New-PSDrive (alias: mount, ndr) – Crea un’unità PowerShell o un drive di rete.
  • New-Item (alias: ni) – Crea file, cartelle o chiavi di registro.
  • New-PSSession (alias: nsn) – Crea una nuova sessione PowerShell persistente.
  • New-Variable (alias: nv) – Crea una nuova variabile.
  • Out-Host (alias: oh) – Invia output alla console.
  • Remove-PSBreakpoint (alias: rbp) – Elimina un breakpoint.
  • Receive-PSSession (alias: rcsn) – Recupera risultati da una sessione disconnessa.
  • Remove-PSDrive (alias: rdr) – Rimuove un drive PowerShell.
  • Rename-Item (alias: ren, rni) – Rinomina file o cartelle.
  • Remove-Job (alias: rjb) – Elimina un job in background.
  • Remove-PSSession (alias: rsn) – Chiude una sessione PowerShell.
  • Remove-Variable (alias: rv) – Elimina una variabile.
  • Start-Job (alias: sajb) – Avvia un job in background.
  • Start-Process (alias: saps) – Avvia un processo o programma.
  • Start-Service (alias: sasv) – Avvia un servizio Windows.
  • Set-PSBreakpoint (alias: sbp) – Crea un breakpoint.
  • Set-Content (alias: sc) – Sostituisce il contenuto di un file.
  • Select-Object (alias: select) – Seleziona proprietà o oggetti.
  • Set-Variable (alias: set) – Imposta o crea una variabile.
  • Stop-Service (alias: spsv) – Arresta un servizio Windows.

Comandi PowerShell disponibili solo come cmdlet

Alcuni comandi PowerShell non hanno alias; possono essere richiamati solo usando il loro nome completo. Questi comandi offrono funzioni avanzate e specifiche:

  • # – Commenta una riga di codice, impedendone l’esecuzione.
  • & – Esegue un comando, una funzione o uno script PowerShell.
  • Break – Interrompe immediatamente un ciclo o una struttura di controllo.
  • Debug-Process – Aggiunge il debug a un processo.
  • Enable-PSRemoting – Abilita l’esecuzione di comandi PowerShell da remoto.
  • Export-Console – Esporta la configurazione della console in un file.
  • For – Esegue un ciclo su elementi che rispettano determinate condizioni.
  • ForEach – Esegue un ciclo su tutti gli elementi di un insieme.
  • Get-Culture – Mostra informazioni regionali e linguistiche del computer.
  • Get-Date – Mostra data e ora correnti.
  • Get-Event – Recupera gli eventi dalla coda della sessione PowerShell.
  • Get-Host – Mostra informazioni sull’host PowerShell.
  • New-Event – Crea un nuovo evento nella sessione PowerShell.
  • New-Object – Crea un nuovo oggetto .NET.
  • Out-File – Salva l’output di un comando in un file.
  • Pause – Sospende l’esecuzione e attende l’input dell’utente.
  • PowerShell – Avvia una sessione PowerShell o esegue uno script.
  • Register-ScheduledJob – Crea un job pianificato.
  • Restart-Computer – Riavvia il computer.
  • Restart-Service – Arresta e riavvia un servizio.
  • Remove-Event – Elimina un evento dalla coda della sessione.
  • Send-MailMessage – Invia un messaggio email.
  • Set-Date – Imposta data e ora del computer.
  • Set-ExecutionPolicy – Gestisce le autorizzazioni per l’esecuzione di script.
  • Test-Path – Verifica se un file o percorso esiste.
  • Try – Catch – Esegue codice e gestisce eventuali errori.
  • Unregister-ScheduledJob – Elimina un job pianificato.
  • While – Esegue un ciclo finché una condizione è vera.
  • Write-Host – Mostra output personalizzato nella console.
  • Write-Progress – Mostra una barra di avanzamento.
  • Zipfile – Comprime o estrae file Zip.

Per approfondimenti dai un’occhiata al Manuale Comandi PowerShell in PDF.

Conclusioni

I comandi PowerShell estendono le possibilità di gestione del sistema operativo Microsoft in modo professionale ed efficiente. Saperli utilizzare significa poter intervenire anche in modo automatizzato su molteplici aspetti della configurazione e manutenzione di Windows.

Il consiglio di Informarea.it

Gestire Windows tramite PowerShell offre una potenza che spesso si sottovaluta, ma la tentazione di usare solo gli alias più brevi può tradire la vera forza di questa console. In molte situazioni, affidarsi esclusivamente agli alias porta a un uso superficiale e poco consapevole dei comandi, rischiando errori o imprecisioni. Per questa ragione, noi riteniamo che imparare i nomi completi dei cmdlet, almeno per i comandi più importanti, sia la chiave per sfruttare davvero PowerShell con sicurezza e precisione. Un consiglio pratico è iniziare sempre con il cmdlet completo e passare all’alias solo quando hai acquisito padronanza, così eviti fraintendimenti e costruisci una base solida per automatizzare la gestione di Windows.

Domande Frequenti (FAQ)

Loader image

Un cmdlet è un comando predefinito di PowerShell che consente di eseguire azioni specifiche, come la gestione di file, processi o servizi.

L’alias è una versione abbreviata di un cmdlet: rende più rapida la digitazione ma richiama lo stesso comando sottostante.

Alcuni comandi tradizionali MS-DOS funzionano grazie agli alias di PowerShell, ma molti richiedono l’utilizzo del cmdlet specifico.

PowerShell offre molte più funzionalità rispetto al prompt dei comandi, inclusa la possibilità di gestire direttamente risorse di sistema tramite cmdlet.

Sì, PowerShell è integrato in tutte le versioni di Windows 7 e successive, tra cui Windows 10 e 11.

Basta digitare exit e premere Invio, oppure cliccare sulla “X” in alto a destra della finestra.

Fabrizio Cannatelli

Autore e Founder di Informarea, sono un appassionato di informatica e tecnologia da sempre. La voglia di comunicare e di condividere sul Web le mie curiosità e le mie conoscenze, mi ha spinto a lanciarmi nel progetto di questo sito. Nato un po' per gioco e un po' per passione, oggi è diventato una grande realtà.

Fabrizio Cannatelli

Approfondimenti