Windows PowerShell

590
Windows PowerShell: cos'è e come funziona

Per capire cos’è Windows PowerShell dobbiamo prima di tutto spiegare cos’è una shell.
La shell o interprete dei comandi è un programma che consente di interagire con il sistema operativo attraverso un terminale e un’interfaccia a riga di comando. Utilizzando la shell è possibile impartire comandi al sistema e aprire programmi.
Windows PowerShell è una shell avanzata integrata in tutti i sistemi operativi Microsoft a partire da Windows 7 (→ quale versione di Windows è installata nel PC). Include un prompt interattivo e un ambiente di script che possono essere utilizzati singolarmente o in combinazione tra loro.

Cos’è Windows PowerShell

Come si deduce dal nome stesso, Windows PowerShell è una shell da riga di comando. È stata progettata specificatamente per un utilizzo da parte degli amministratori di sistema e può essere utilizzata per eseguire tutti i comandi di cmd.exe.
PowerShell consente di interagire con il sistema operativo, sfruttando gli strumenti disponibili da riga di comando e utilizzando la sua capacità di programmazione di script per automatizzare il lavoro di routine.
Ma vediamo nel dettaglio quali sono le caratteristiche e i vantaggi offerti da questa shell della Microsoft.

  • Integrazione con Microsoft .NET Framework
    .NET Framework è un ambiente di esecuzione gestita per Windows che fornisce una vasta gamma di servizi alle app in esecuzione.
    I comandi degli script PowerShell hanno accesso alle risorse del .NET Framework, come avviene per i linguaggi di programmazione come C#
  • Orientamento agli oggetti
    A differenza della maggior parte delle shell che accettano e restituiscono puro testo, tutti i comandi di PowerShell che generano un output restituiscono oggetti .NET Framework eliminando l’esigenza di analizzare il testo nel caso in cui l’output di un comando costituisca l’input per un comando successivo.
  • Command-Let
    Windows PowerShell introduce il concetto di command-let o cmdlet, uno strumento da riga di comando con una singola funzione incorporato nella shell.
    I cmdlet di sistema disponibili sono più di cento. Inoltre è possibile scrivere cmdlet personalizzati e condividerli con altri utenti.
    Ogni cmdlet può essere utilizzato separatamente oppure in combinazione con altri per eseguire attività complesse.
  • Studiata per gli amministratori di sistema
    PowerShell incorpora funzionalità rivolte agli amministratori di sistema, come la possibilità di operare su computer remoti, accedere al registro di sistema di Windows (→ cos’è il registro di sistema di Windows) e avviare o arrestare servizi.

Come avviare Windows PowerShell

Dopo aver spiegato cos’è Windows PowerShell vediamo come avviarla.
Premiamo sulla tastiera del computer i tasti Windows (è il tasto con il logo di Windows) e R contemporaneamente.
Si aprirà la finestra Esegui (→ cos’è il comando Esegui di Windows).
Nella casella Apri: digitiamo powershell
Facciamo clic su OK.

Interagire con Windows PowerShell

Tutti i comandi disponibili nel prompt dei comandi di Windows sono disponibili e possono essere utilizzati anche in PowerShell.
Possiamo utilizzare i simboli di direzione > per inviare l’output su un file oppure >> per aggiungerlo a un file. PowerShell utilizza degli alias per associare i comandi di cmd.exe ai suoi cmdlet. Ad esempio il comando cd è un alias cmdlet set-location così come dir è un alias del cmdlet get-children.
PowerShell può essere utilizzata per lanciare comandi eseguibili o per lavorare direttamente sul registro di sistema di Windows (→ cos’è il registro di sistema di Windows) senza usare il suo editor.

Uno dei punti di forza di questa shell sono i suoi cmdlet. Ogni cmdlet è rappresentato da un verbo, seguito da un trattino e da un nome.
Per visualizzare l’elenco completo di tutti i comandi disponibili digitiamo get-command. Per avere informazioni relative a un cmdlet specifico digitiamo get-help seguito del nome del cmdlet.
L’operatore pipe, la barra verticale |, permette di inviare l’output di un cmdlet a un altro cmdlet che a sua volta lo utilizzerà come input. Utilizzando il pipe possiamo connettere tutti i cmdlet necessari, ovviamente a condizione che il cmdlet successivo sia capace di interpretare l’output prodotto da quello precedente.
Come abbiamo spiegato precedentemente i cmdlet restituiscono puri oggetti .NET e non testo. Per questo motivo un cmdlet che si trova a destra di un operatore di pipe può operare direttamente sulle proprietà o i metodi dell’output prodotto dal cmdlet precedente.

Cos’è Windows PowerShell ISE

Windows PowerShell ISE (Integrated Scripting Environment) è un’applicazione introdotta a partire da PowerShell 2.0. Consente di eseguire comandi e scrivere, testare e sottoporre a debug gli script in un’unica interfaccia utente grafica basata su Windows.
Questo ISE comprende un riquadro per i comandi, uno per gli script e uno per l’output. Nel riquadro di output vengono visualizzati i risultati dei comandi lanciati negli altri due riquadri. Inoltre l’ambiente grafico può essere ridimensionato scegliendo la disposizione dei riquadri.
PowerShell ISE supporta modifiche su più righe, colorazione della sintassi, completamento tramite il tasto TAB e l’esecuzione selettiva e utilizza un proprio profilo, distinto da quello impiegato per personalizzare PowerShell.

Come avviare Windows PowerShell ISE

Premiamo sulla tastiera del computer i tasti Windows (è il tasto con il logo di Windows) e R contemporaneamente.
Si aprirà la finestra Esegui (→ cos’è il comando Esegui di Windows).
Nella casella Apri: digitiamo powershell_ise
Facciamo clic su OK.