Azienda Microsoft rilascio della shell di comando , i cui codici sorgente sono stati resi disponibili nel 2016 con licenza MIT. Il nuovo rilascio della shell non è solo per Windows, ma anche per Linux e macOS.
PowerShell è ottimizzato per l'automazione delle operazioni nella riga di comando e offre strumenti integrati per la gestione dei dati strutturati in formati come JSON, CSV e XML; supporta anche le API REST e i modelli ad oggetti. Oltre alla shell, è disponibile un linguaggio orientato agli oggetti per la scrittura di script e un insieme di utilità per la gestione di moduli e script. A partire dalla versione PowerShell 6, il progetto si evolve utilizzando la piattaforma .NET Core. Per impostazione predefinita, PowerShell con informazioni sul sistema operativo e sulla versione del programma (per disattivare la telemetria, è necessario impostare la variabile ambiente POWERSHELL_TELEMETRY_OPTOUT=1 prima dell'avvio).
Tra le novità introdotte in PowerShell 7.0:
- Supporto per l'esecuzione parallela dei pipeline tramite la struttura 'ForEach-Object -Parallel';
- Operatore di assegnazione condizionale 'a ? b : c';
- Gli operatori di avvio condizionale dei flussi «||» e «&&» (ad esempio, cmd1 && cmd2, il secondo comando verrà eseguito solo se il primo ha avuto successo);
- Operatori logici «??» e «??=», che restituiscono l'operando di destra se l'operando di sinistra è NULL (ad esempio, a = b ?? «stringa predefinita» se b è null, l'operatore restituirà la stringa con il valore predefinito).
- Sistema di visualizzazione dinamica degli errori migliorato (Get-Error cmdl);
- Strato di compatibilità per i moduli di Windows PowerShell;
- Uscita automatica di una notifica per la disponibilità di una nuova versione;
- Possibilità di richiamare risorse DSC (Desired State Configuration) direttamente da PowerShell.
Fonte: opennet.ru
