Windows PowerShell, conosciuto inizialmente come Microsoft Shell o MSH (o col nome in codice Monad) è una shell caratterizzata dall’interfaccia a riga di comando (CLI) e da un linguaggio di scripting, sviluppata da Microsoft. È basato sulla programmazione a oggetti e sul framework Microsoft .NET.

powshell2

Windows PowerShell è uno strumento utile per la gestione del sistema. È stato sviluppato da Microsoft come alternativa al programma a riga di comando di Windows cmd.exe e a Windows Script Host.

I comandi di Windows PowerShell, detti cmdlet, consentono di gestire i computer dalla riga di comando. Inoltre, Windows PowerShell include un parser di espressioni avanzato e un linguaggio di scripting completamente sviluppato.

Dopo aver avviato la shell, (vedi questo post) provate a digitare Get-Command. Potete anche scrivere get-co e premere il tasto TAB per sfruttare la funzionalità del completamento automatico. L’output è un lungo elenco: sono tutti i cmdlets offerti da PS.

L’help dei comandi invece è raggiungibile con Get-Help seguito dal nome del cmdlet interessato, ad esempio Get-Help Get-Process. Sono anche utilizzabili anche due comandi di compatibilità: help (tipico del CMD) e man (tipico delle shell Unix/Linux).

powshell3

Ecco alcuni esempi di utilizzo di Windows PowerShell:

Concludi tutti i processi il cui nome inizia con la lettera a:
PS> get-process a* | stop-process

Cerca tutti i processi che utilizzano più di 10 MB di memoria e li conclude:
PS> get-process | where { $_.WS -gt 10MB } | stop-process