lunedì 20 febbraio 2017

TUTORIAL POWERSHELL - PARTE 3 - HELP

Tutorial introduttivo all'utilizzo di PowerShell, a prima vista una estensione del prompt dei comandi di Microsoft Windows ma che in realtà è molto di più.






Lista completa articoli su Tutorial PowerShell [link]

Get-Help

Durante un percorso di apprendimento della Shell di Linux tutti gli utenti si trovano nelle condizioni di utilizzare il magico comando man, un comando che spiega cosa fa un determinato comando e come deve essere utilizzato. Anche nel prompt dei comandi esiste il comando help, insomma per ogni console esiste il comando che fornisce un aiuto contestuale.

Allo stesso modo il cmdlet Get-Help (che possiede come alias proprio man ed help) fornisce un aiuto contestuale al comando che si intende effettuare. Da questo momento in poi ogni volta che viene affrontato un cmdlet, per approfondire l'argomento vi invito a digitare il cmdlet Get-Help seguito dal comando oppure digitare il parametro -? dopo il cmdlet:
Get-Help dir
dir -?

Nota: Get-Help è un cmdlet molto utile in PowerShell, la controparte -? è altrettanto utile ma applicabile solo ai cmdlet di sistema, quindi non è applicabile a cmdlet personalizzati o scaricati da internet. Per questo motivo consiglio di utilizzare sempre Get-Help.


Update-Help

Da PowerShell 3.0 in poi è stato modificato il concetto di help, a tutti gli effetti i cmdlet possono subire modifiche, estensioni o aggiornamenti ed è quindi necessario manetenere un help aggiornato con le modifiche. Per aggiornare la definizione dei comandi è necessario utilizzare il cmdlet:
Update-Help

Nota: per eseguire il cmdlet Update-Help è necessario eseguire una sessione privilegiata di PowerShell, per fare ciò deve essere eseguito PowerShell.exe con privilegi di Amministratore:

Get-Command

Il cmdlet Get-Command è uno dei pilastri fondamentali di PowerShell, digitando questa parola chiave vengono elencati tutti i cmdlet eseguibili di PowerShell:


La lista è molto lunga ed è formata da tre colonne:

  • Tipo di comando (Alias, Funzione, Script, Cmdlet)
  • Nome
  • Modulo (la libreria a cui appartiene l'istruzione)


Il risultato di questo cmdlet può essere anche soggetto a ricerca, applicando un suffisso (parametro) alla parola chiave. Ad esempio, se volessimo ottenere la lista di tutti i cmdlet che hanno qualcosa a che fare con la parola printer:
Get-Command *printer*

Nota: Oltre a poter ottenere la lista dei comandi nella console, è possibile visualizzare una comoda interfaccia grafica per la ricerca dei parametri, attraverso il cmdlet Show-Command.

PowerShell ISE - Help

Da PowerShell 3.0, quando viene utilizzato PowerShell ISE, il cmdlet Get-Help ha acquistato delle funzionalità di interfaccia grafica. Aggiungendo il parametro -ShowWindow è possibile ottenere una finestra utile a filtrare il contenuto dell'help desiderato:


Come leggere l'help

Prediamo come esempio il cmdlet Get-Location (cmdlet che restituisce la posizione attuale nella console). Digitiamo l'help del cmdlet:
Get-Help Get-Location

Otteniamo il seguente output:


Nella sezione Syntax troviamo i parametri del cmdlet. I parametri fra parentesi quadre sono opzionali secondo la struttura [parametro tipo]; se nome del parametro si trova fra parentesi quadre può essere omesso, se invece il tipo non è specificato significa che è un parametro di tipo flag (come -ShowWindow che abbiamo visto).

Oltre al normale contenuto di Help, è possibile ottenere una lista di esempi per capire come utilizzare un cmdlet. Per ottenere la lista degli esempi è sufficiente aggiungere il flag -examples:

Get-Help dir -examples

Conclusione

Uno dei modi più semplici e pratici per imparare PowerShell è proprio utilizzarlo ed utilizzare il cmdlet Get-Help per ottenere informazioni interessanti riguardo le funzionalità e gli utilizzi dei comandi. Nel prossimo articolo [link] capiremo in che modo PowerShell sia Object-Oriented.


Nessun commento:

Posta un commento