venerdì 17 febbraio 2017

TUTORIAL POWERSHELL - PARTE 2 - COMANDI

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]

DOS in a box

Nel precedente articolo [link] abbiamo visto come PowerShell, a prima vista, sia una estensione del prompt dei comandi di Microsoft Windows. Possiamo verificare questa discendenza andando a scrivere i classici comandi DOS [wikipedia]:




UNIX friendly

Oltre alla sintassi tipica di DOS sono stati introdotte istruzioni per rendere PowerShell facilmente approcciabile anche da chi proviene dal mondo Linux, permettendo l'esecuzione di comandi tipici della Shell UNIX [wikipedia]:


Attenzione: non deve essere scambiato PowerShell per Bash, sono due cose differenti e di comandi simili ne possiamo contare una decina. Per esempio, se volessimo effettuare il controllo delle impostazioni di rete con il comando UNIX ifconfig troveremmo questo messaggio di errore:

Alias

Cerchiamo di dare un senso a quello che abbiamo appena detto: in PowerShell possono essere utilizzati comandi tipici del mondo DOS e del mondo UNIX ma perchè? Perchè in realtà non vengono realmente eseguiti! PowerShell riesce ad eseguire comandi simili in trasparenza grazie al concetto di Alias: un comando che, quando digitato, in realtà esegue un altro comando PowerShell.

Esempio: Prendiamo il semplicissimo comando dir di DOS che equivale ad ls di UNIX, entrambi sono Alias del comando PowerShell Get-ChildItem:

Gli Alias vengono utilizzati anche come scorciatoie per i comandi PowerShell. Infatti oltre a dir ed ls esiste anche l'alias gci (get child item). Per conoscere quali alias siano disponibili o a quale comando PowerShell un alias faccia riferimento, è sufficiente utilizzare l'help. Di questo ne parleremo nel prossimo articolo [link].

CMDLET

Jeffrey Snover [wikipedia], leader del team di progettazione di tecnologie come Windows Server e Microsoft Azure, è anche l'inventore di PowerShell. Al momento della sua concezione, fu deciso di chiamare i comandi di PowerShell con il termine di CMDLET. Un cmdlet non è altro che un comando, nulla di particolare rispetto ad altri comandi, ma la particolarità di questo nome fu pensata per circoscrivere e agevolare le ricerche legate ad esso. In questo modo, se fosse necessario fare una ricerca su un particolare comando di PowerShell, parola chiave sarebbe sempre "cmdlet" evitando di ottenere risultati non pertinenti.

La sintassi di un cmdlet è verbo-sostantivo, per ottenere una lista completa dei verbi disponibili (preconfigurati) di PowerShell è necessario digitare il comando Get-Verb:
Get-Verb



Senza saperlo, abbiamo implicitamente utilizzato un cmdlet per ottenere questa lista. Il cmd let che abbiamo appena utilizzato è formato dal verbo get e dal sostantivo verb, la funzionalità consiste nel ottenere (get) i verbi utilizzabili (verb).

Importante: i cmdlet non sono case-sensitive, quindi possono essere digitati sia maiuscoli che minuscoli.

Autocompletamento

Prima di procedere nel dettaglio dei comandi e delle altre funzionalità di PowerShell è bene tenere sempre a mente che è possibile completare i cmdlet che vengono digitati tramite il tasto TAB.


Conclusione

PowerShell è stato progettato per essere approcciato facilmente dagli utenti che erano abituati al prompt dei comandi e strizza addirittura  l'occhio agli utenti Linux permettendo di utilizzare una sintassi simile. Nel prossimo articolo [link] verranno analizzati i primi cmdlet di PowerShell, nello specifico il verbo Get in alcune sue declinazioni.



Nessun commento:

Posta un commento