Condividi tramite


Installare PowerShell in Windows

Esistono diversi modi per installare PowerShell in Windows. Ogni metodo di installazione è progettato per supportare diversi scenari e flussi di lavoro. Scegliere il metodo più adatto alle proprie esigenze.

  • WinGet - Modo consigliato per installare PowerShell nei client Windows
  • Pacchetto MSI - Scelta ottimale per i server Windows e gli scenari di distribuzione aziendali
  • Pacchetto ZIP - Modo più semplice per eseguire il sideload o installare più versioni
    • Usare questo metodo per i sistemi basati su Windows Nano Server, Windows IoT e Arm
  • Strumento globale .NET : una buona scelta per gli sviluppatori .NET che installano e usano altri strumenti globali
  • Pacchetto di Microsoft Store : un modo semplice per installare utenti casuali di PowerShell, ma presenta limitazioni

PowerShell 7 viene installato in una nuova directory ed eseguito in parallelo con Windows PowerShell 5.1. Le versioni più recenti di PowerShell 7 sostituiscono le versioni precedenti di PowerShell 7. Le versioni di anteprima di PowerShell possono essere installate side-by-side con altre versioni di PowerShell. Le versioni di anteprima più recenti sostituiscono le versioni di anteprima precedenti esistenti.

PowerShell 7 supporta gli aggiornamenti tramite Microsoft Update. Quando si abilita questa funzionalità, si otterranno gli aggiornamenti più recenti di PowerShell 7 nel flusso di gestione tradizionale di Microsoft Update (MU), indipendentemente dal fatto che si tratti di Windows Update for Business, WSUS, Microsoft Endpoint Configuration Manager o della finestra di dialogo mu interattiva in Impostazioni.

Per altre informazioni, vedere Domande frequenti su Microsoft Update per PowerShell.

WinGet, Gestione pacchetti Windows, è uno strumento da riga di comando che consente agli utenti di individuare, installare, aggiornare, rimuovere e configurare applicazioni nei computer client Windows. Questo strumento è l'interfaccia client per il servizio Gestione pacchetti Windows. Lo strumento da riga di comando è incluso per impostazione predefinita in Windows 11 e nelle versioni moderne di Windows 10 come App Installer .

Annotazioni

Per un elenco dei requisiti di sistema e delle istruzioni di installazione, vedere la documentazione di winget . winget non è disponibile in Windows Server 2022 o versioni precedenti. Windows Server 2025 include winget solo per Windows Server con Esperienza desktop .

I comandi seguenti possono essere usati per installare PowerShell tramite i pacchetti winget pubblicati:

Cercare la versione più recente di PowerShell

winget search --id Microsoft.PowerShell
Name               Id                           Version Source
---------------------------------------------------------------
PowerShell         Microsoft.PowerShell         7.5.4.0 winget
PowerShell Preview Microsoft.PowerShell.Preview 7.6.0.5 winget

Installare PowerShell o PowerShell Preview usando il --id parametro

winget install --id Microsoft.PowerShell --source winget
winget install --id Microsoft.PowerShell.Preview --source winget

Annotazioni

Nei sistemi Windows che usano il processore X86 o X64 installa winget il pacchetto MSI. Nei sistemi che usano il processore winget Arm64 installa il pacchetto di Microsoft Store (MSIX).

Installare il pacchetto MSI

Per installare PowerShell in Windows, usare i collegamenti seguenti per scaricare il pacchetto di installazione da GitHub.

Ultima versione stabile:

Versione di anteprima più recente:

Dopo il download, fare doppio clic sul file del programma di installazione e seguire le istruzioni.

Il programma di installazione crea un collegamento nel menu Start di Windows.

  • Per impostazione predefinita, il pacchetto viene installato in $Env:ProgramFiles\PowerShell\7
    • Il percorso di installazione viene aggiunto alla $Env:PATH variabile di ambiente
  • Le versioni di anteprima di PowerShell 7 vengono installate in $Env:ProgramFiles\PowerShell\7-preview
  • È possibile avviare PowerShell tramite il menu Start o $Env:ProgramFiles\PowerShell\7\pwsh.exe

Annotazioni

Per eseguire PowerShell 7.5 side-by-side con altre versioni di PowerShell 7, usare il metodo di installazione ZIP per installare l'altra versione in una cartella diversa.

Installare il pacchetto MSI dalla riga di comando

I pacchetti MSI possono essere installati dalla riga di comando per consentire agli amministratori di distribuire i pacchetti senza interazione dell'utente. Il pacchetto MSI include le proprietà seguenti per controllare le opzioni di installazione:

  • USE_MU - Questa proprietà ha due valori possibili:

    • 1 (impostazione predefinita): consente di acconsentire esplicitamente all'aggiornamento tramite Microsoft Update, WSUS o Configuration Manager
    • 0 - Non acconsentire esplicitamente all'aggiornamento tramite Microsoft Update, WSUS o Configuration Manager
  • ENABLE_MU

    • 1 (impostazione predefinita) - Acconsentire esplicitamente all'uso di Microsoft Update per gli aggiornamenti automatici

    • 0 - Non acconsentire esplicitamente all'uso di Microsoft Update

      Annotazioni

      L'abilitazione degli aggiornamenti potrebbe essere stata impostata in un'installazione precedente o in una configurazione manuale. L'uso ENABLE_MU=0 di non rimuove le impostazioni esistenti. Inoltre, questa impostazione può essere sovrasvolta dalle impostazioni di Criteri di gruppo controllate dall'amministratore.

  • ADD_EXPLORER_CONTEXT_MENU_OPENPOWERSHELL - Questa proprietà controlla l'opzione per aggiungere l'elemento Open PowerShell al menu di scelta rapida in Esplora file.

  • ADD_FILE_CONTEXT_MENU_RUNPOWERSHELL - Questa proprietà controlla l'opzione per aggiungere l'elemento Run with PowerShell al menu di scelta rapida in Esplora file.

  • ENABLE_PSREMOTING - Questa proprietà controlla l'opzione per attivare il remoting di PowerShell durante l'installazione.

  • REGISTER_MANIFEST - Questa proprietà controlla l'opzione per registrare il manifesto del sistema di Event Logging di Windows.

  • ADD_PATH - Questa proprietà controlla l'opzione per l'aggiunta di PowerShell alla variabile di ambiente PATH di Windows.

  • DISABLE_TELEMETRY - Questa proprietà controlla l'opzione per disabilitare i dati di telemetria di PowerShell impostando la POWERSHELL_TELEMETRY_OPTOUT variabile di ambiente.

  • INSTALLFOLDER - Questa proprietà controlla la directory di installazione. Il valore predefinito è $Env:ProgramFiles\PowerShell\. Questo è il percorso in cui il programma di installazione crea la sottocartella versionata. Non è possibile modificare il nome della sottocartella versionata.

    • Per le versioni correnti, la sottocartella versionata è 7
    • Per le versioni di anteprima, la sottocartella con versione è 7-preview

L'esempio seguente illustra come installare PowerShell in modo invisibile all'utente con tutte le opzioni di installazione abilitate.

msiexec.exe /package PowerShell-7.5.4-win-x64.msi /quiet ADD_EXPLORER_CONTEXT_MENU_OPENPOWERSHELL=1 ADD_FILE_CONTEXT_MENU_RUNPOWERSHELL=1 ENABLE_PSREMOTING=1 REGISTER_MANIFEST=1 USE_MU=1 ENABLE_MU=1 ADD_PATH=1

Per un elenco completo delle opzioni della riga di comando per Msiexec.exe, vedere Opzioni della riga di comando.

Eseguire l'installazione dal pacchetto ZIP

Gli archivi ZIP binari di PowerShell vengono forniti per abilitare scenari di distribuzione avanzati. Scarica uno degli archivi ZIP seguenti dalla pagina versione corrente.

A seconda della modalità di download del file, potrebbe essere necessario sbloccare il file con il cmdlet Unblock-File. Decomprimere il contenuto nella posizione preferita ed eseguire pwsh.exe da tale posizione. A differenza dell'installazione dei pacchetti MSI, l'installazione dell'archivio ZIP non verifica i prerequisiti. Per il corretto funzionamento della comunicazione remota su WSMan, assicurati di aver rispettato i prerequisiti.

Usare questo metodo per installare la versione di PowerShell basata su ARM in computer come Microsoft Surface Pro X. Per ottenere i risultati ottimali, installare PowerShell nella cartella $Env:ProgramFiles\PowerShell\7.

Installare come strumento globale .NET

Se .NET Core SDK è già installato, è possibile installare PowerShell come strumento globale .NET.

dotnet tool install --global PowerShell

Il programma di installazione dello strumento DotNet aggiunge $HOME\.dotnet\tools alla variabile di ambiente $Env:PATH. La shell attualmente in esecuzione non dispone tuttavia del parametro $Env:PATH aggiornato. È possibile avviare PowerShell da una nuova shell digitando pwsh.

Eseguire l'installazione da Microsoft Store

PowerShell può essere installato da Microsoft Store. È possibile trovare la versione di PowerShell nel sito di Microsoft Store o nell'applicazione Store in Windows.

Vantaggi del pacchetto di Microsoft Store:

  • Aggiornamenti automatici integrati in Windows
  • Si integra con altri meccanismi di distribuzione software come Intune e Configuration Manager
  • Può essere installato nei sistemi Windows usando processori x86, x64 o Arm64

Limitazioni note

Per impostazione predefinita, i pacchetti di Windows Store vengono eseguiti in una sandbox dell'applicazione che virtualizza l'accesso ad alcuni percorsi del file system e del Registro di sistema. Le modifiche apportate ai percorsi di file e registro virtualizzati non vengono mantenute all'esterno della sandbox dell'applicazione.

Questa sandbox blocca tutte le modifiche alla cartella radice dell'applicazione. Le impostazioni di configurazione a livello di sistema archiviate in $PSHOME non possono essere modificate. Ciò include la configurazione WSMAN. In questo modo si impedisce alle sessioni remote di connettersi alle installazioni di PowerShell basate su Store. Sono supportate le configurazioni a livello di utente e la comunicazione remota SSH.

I comandi seguenti devono scrivere in $PSHOME. Questi comandi non sono supportati in un'istanza di Microsoft Store di PowerShell.

  • Register-PSSessionConfiguration
  • Update-Help -Scope AllUsers
  • Enable-ExperimentalFeature -Scope AllUsers
  • Set-ExecutionPolicy -Scope LocalMachine

Per altre informazioni, vedere Informazioni sull'esecuzione delle app desktop in pacchetto in Windows.

A partire da PowerShell 7.2, il pacchetto PowerShell è ora esente dalla virtualizzazione dei file e del Registro di sistema. Le modifiche apportate ai percorsi di file e registro virtualizzati ora vengono mantenute all'esterno della sandbox dell'applicazione. Tuttavia, le modifiche apportate alla cartella radice dell'applicazione sono ancora bloccate.

Importante

Per il funzionamento di questa esenzione, è necessario essere in esecuzione in Windows build 1903 o versione successiva.

Aggiornare un'installazione esistente

Per ottenere i risultati ottimali durante l'aggiornamento, è necessario usare lo stesso metodo di installazione usato al momento dell'installazione di PowerShell. Se non si è certi della modalità di installazione di PowerShell, è possibile controllare il valore della $PSHOME variabile, che punta sempre alla directory contenente PowerShell in cui è in esecuzione la sessione corrente.

  • Se il valore è $HOME\.dotnet\tools, PowerShell è stato installato con lo strumento globale .NET.
  • Se il valore è $Env:ProgramFiles\PowerShell\7, PowerShell è stato installato come pacchetto MSI o con WinGet in un computer con un processore X86 o x64.
  • Se il valore inizia con $Env:ProgramFiles\WindowsApps\, PowerShell è stato installato come pacchetto di Microsoft Store o con WinGet nel computer con un processore ARM.
  • Se il valore è diverso, è probabile che PowerShell sia stato installato come pacchetto ZIP.

Se è stato installato tramite il pacchetto MSI, tali informazioni vengono visualizzate anche nel Pannello di controllo Programmi e funzionalità .

Per determinare se PowerShell può essere aggiornato con WinGet, eseguire il comando seguente:

winget list --id Microsoft.PowerShell --upgrade-available

Se è disponibile un aggiornamento, l'output indica la versione più recente disponibile. Usare il comando seguente per aggiornare PowerShell usando WinGet:

winget upgrade --id Microsoft.PowerShell

Disinstallare PowerShell 7

Il processo di disinstallazione di PowerShell 7 dipende dal metodo di installazione usato.

  • Se PowerShell è stato installato con WinGet, eseguire il comando seguente:

    winget uninstall --id Microsoft.PowerShell
    
  • Se PowerShell è stato installato usando il pacchetto MSI, è possibile disinstallarlo dal Pannello di controllo Programmi e funzionalità .

  • Se PowerShell è stato installato usando il pacchetto ZIP, eliminare la cartella in cui sono stati decompressi i file.

  • Se PowerShell è stato installato da Microsoft Store, aprire il menu Start e cercare PowerShell 7. Selezionare Disinstalla dal menu delle opzioni.

  • Se PowerShell è stato installato come strumento globale .NET, eseguire il comando seguente:

    dotnet tool uninstall --global PowerShell
    

Versioni di Windows supportate

Microsoft supporta PowerShell fino a quando PowerShell non raggiunge la fine del supporto o la versione di Windows raggiunge la fine del supporto.

Le immagini Docker per .NET SDK contengono le versioni più recenti di PowerShell. Queste immagini sono disponibili nel Registro artefatti di Microsoft.

Queste immagini potrebbero non avere gli aggiornamenti della sicurezza più recenti. Microsoft consiglia di aggiornare i pacchetti del sistema operativo alla versione più recente per assicurarsi che vengano applicati gli aggiornamenti della sicurezza più recenti.

Queste immagini vengono fornite a scopo di test. Se hai bisogno di un'immagine Docker per l'ambiente di produzione, dovresti creare e gestire la tua.

Annotazioni

Il supporto per una versione specifica di Windows è determinato dai criteri relativi al ciclo di vita supporto tecnico Microsoft. Per altre informazioni, vedere:

È possibile controllare la versione usata eseguendo winver.exe.

Supporto per l'installazione

Microsoft supporta i metodi di installazione in questo documento. Potrebbero essere disponibili altri metodi di installazione di terze parti da altre origini. Anche se questi strumenti e metodi possono funzionare, Microsoft non può supportare tali metodi.

Annotazioni

I comandi di installazione in questo articolo sono destinati alla versione stabile più recente di PowerShell. Per installare una versione diversa di PowerShell, modificare il comando in modo che corrisponda alla versione necessaria. I collegamenti seguenti consentono di accedere alla pagina di versione più recente per ogni versione in GitHub.

I collegamenti di download per ogni pacchetto si trovano nella sezione Asset della pagina di rilascio. La sezione Asset può essere compressa, quindi potrebbe essere necessario fare clic per espanderla.