Acquisire informazioni su Windows PowerShell

Completato

PowerShell è una soluzione di automazione costituita da una shell della riga di comando, da un linguaggio di scripting e da un framework di gestione della configurazione.

Shell della riga di comando

Windows PowerShell ha sostituito l'interfaccia della riga di comando di Windows (cmd.exe) e la funzionalità limitata del linguaggio di scripting di file batch. PowerShell accetta e restituisce oggetti .NET e include:

  • Cronologia della riga di comando.
  • Completamento tramite tasto TAB e previsione dei comandi.
  • Supporto per alias di comandi e parametri.
  • Comandi di concatenamento che usano la funzionalità Pipeline.
  • Guida esaustiva nella console

Inizialmente, Windows PowerShell era una piattaforma basata su .NET Framework e funzionava solo su sistemi operativi Windows. Tuttavia, con le versioni recenti, PowerShell usa .NET Core e può essere eseguito su piattaforme Windows, macOS e Linux. Grazie al supporto multipiattaforma, queste versioni recenti sono note come PowerShell (invece di Windows PowerShell).

Linguaggio di scripting

I comandi forniscono le principali funzionalità di PowerShell. Esistono molti tipi di comandi, inclusi i cmdlet (termine pronunciato command-let), funzioni, filtri, script, applicazioni, configurazioni e flussi di lavoro. I comandi sono blocchi predefiniti che è possibile raggruppare usando il linguaggio di scripting di Windows PowerShell. L'uso di comandi consente di creare soluzioni personalizzate per problemi amministrativi complessi. In alternativa, è possibile eseguire i comandi direttamente all'interno della console di PowerShell per completare una singola attività. La console è l'interfaccia della riga di comando per PowerShell ed è il modo principale in cui si interagirà con PowerShell.

I cmdlet usano una convenzione di denominazione Verbo-Sostantivo. Ad esempio, è possibile usare il cmdlet Get-Command per elencare tutte le funzioni e tutti i cmdlet registrati nella shell dei comandi. Il verbo identifica l'azione che deve eseguire il cmdlet, mentre il sostantivo identifica la risorsa su cui il cmdlet eseguirà l'azione.

Le applicazioni server e i servizi cloud Microsoft forniscono cmdlet specializzati che è possibile usare per gestire tali servizi. In realtà, è possibile gestire alcune funzionalità solo usando PowerShell. In molti casi, anche quando l'applicazione fornisce un'interfaccia utente grafica (GUI) per gestire una funzionalità specifica, è basata su PowerShell per l'implementazione di almeno alcune delle funzionalità dietro le quinte.

Framework di gestione della configurazione

PowerShell incorpora il framework di gestione PowerShell Desired State Configuration (DSC). Questo framework consente di gestire l'infrastruttura aziendale con il codice per semplificare le operazioni seguenti:

  • Uso di configurazioni dichiarative e script ripetibili per distribuzioni ripetibili.
  • Applicazione delle impostazioni di configurazione e identificazione dei casi in cui la configurazione devia rispetto ai requisiti standard.
  • Distribuzione delle impostazioni di configurazione tramite modelli push o pull.

Le applicazioni e i servizi con funzioni amministrative basate su PowerShell hanno un funzionamento coerente. Questa caratteristica consente di applicare rapidamente i concetti appresi. Inoltre, quando si usano script di automazione per amministrare un'applicazione software, è possibile riutilizzarli anche tra altre applicazioni.

Versioni di Windows PowerShell

Man mano che si apprende PowerShell, è importante identificare le diverse versioni che possono essere usate, a seconda del tipo e dell'edizione del sistema operativo. Sono disponibili due piattaforme principali di PowerShell:

  • Windows PowerShell
  • PowerShell (in origine noto come PowerShell Core)

Windows PowerShell

Windows PowerShell è disponibile esclusivamente per il sistema operativo Windows. Windows PowerShell 1.0 è stato introdotto nel 2006 come componente installabile su Windows XP Service Pack 2 (SP2), Windows Server 2003 SP1 e Windows Vista. Era anche un componente opzionale di Windows Server 2008. Nel 2009 PowerShell 2.0 è stato integrato in Windows 7 e Windows Server 2008 R2. Tutte le versioni di Windows PowerShell fino alla 5.1 inclusa, che è la versione disponibile con Windows 10, sono integrate con un sistema operativo Windows.

Poiché Windows PowerShell è un componente del sistema operativo, riceve gli stessi contratti di licenza e lo stesso supporto per il ciclo di vita del sistema operativo padre.

PowerShell

PowerShell Core viene fornito, installato e configurato separatamente da Windows PowerShell. Reso disponibile per la prima volta come PowerShell Core 6.0 nel 2018, è stato il primo a offrire supporto multipiattaforma, estendendone la disponibilità ai sistemi operativi macOS e Linux.

Nota

La versione più recente di PowerShell è PowerShell 7.5, disponibile tramite Microsoft Update.

PowerShell e Windows PowerShell vengono installati separatamente ed è possibile eseguire i comandi supportati usando entrambi gli ambienti.

I contratti di licenza Standard di Windows non includono PowerShell. È invece incluso nei contratti di supporto Microsoft a pagamento, Microsoft Enterprise Agreement e Microsoft Software Assurance. È disponibile anche il supporto della community.

Cronologia delle versioni

La tabella seguente contiene una sequenza temporale delle versioni principali di PowerShell:

Tabella 1: sequenza temporale delle versioni di PowerShell

Versione Data di rilascio Note
PowerShell 7.5 Gennaio 2025 Basato su .NET 9.0.
PowerShell 7.4 Novembre 2023 Basato su .NET 8.0.
PowerShell 7.3 Novembre 2022 Basato su .NET 7.0.
PowerShell 7.2 Novembre 2021 Basato su .NET 6.0.
PowerShell 7.1 Novembre 2020 Basato su .NET 5.0.
PowerShell 7.0 Marzo 2020 Basato su .NET Core 3.1.
PowerShell 6.0 2018 settembre Basato su .NET Core 2.0. Prima versione installabile su Windows, Linux e macOS.
PowerShell 5.1 Agosto 2016 Reso disponibile con l'aggiornamento dell'anniversario di Windows 10, in Windows Server 2016 e come parte di Windows Management Framework (WMF) 5.1.
PowerShell 5.0 2016 febbraio Integrato in Windows 10 versione 1511. Rilasciato in Windows Management Framework (WMF) 5.0. Può essere installato in Windows Server 2008 R2, Windows Server 2012, Windows 10, Windows 8.1 Enterprise, Windows 8.1 Pro e Windows 7 SP1.
PowerShell 4.0 Ottobre 2013 Integrato in Windows 8.1 e Windows Server 2012 R2. Può essere installato in Windows 7 SP1, Windows Server 2008 SP1 e Windows Server 2012.
PowerShell 3.0 Ottobre 2012 Integrato in Windows 8 e Windows Server 2012. Può essere installato in Windows 7 SP1, Windows Server 2008 SP1 e Windows Server 2008 R2 SP1.
PowerShell 2.0 Luglio 2009 Integrato in Windows 7 e Windows Server 2008 R2. Può essere installato in Windows XP SP3, Windows Server 2003 SP2 e Windows Vista SP1.
PowerShell 1.0 Novembre 2006 Installabile in Windows XP SP2, Windows Server 2003 SP1 e Windows Vista. Componente facoltativo di Windows Server 2008.

Nota

In questo modulo, gli argomenti sono correlati alle versioni più recenti di Windows PowerShell e PowerShell (5.1 e 7.5). La maggior parte dei cmdlet funzionerà usando entrambe le piattaforme. Tuttavia, verrà visualizzata una nota se una determinata funzionalità è supportata da o correlata a una piattaforma specifica.

Lettura aggiuntiva: per supportare versioni più recenti di PowerShell in sistemi operativi di versioni precedenti, può essere necessario installare l'ultima versione di Windows Management Framework. Per altre informazioni, vedere Installare e configurare WMF 5.1.