Se gli script di PowerShell ti stanno ignorando o generano errori, non sei certo il solo. A volte le impostazioni di sicurezza predefinite di Windows 11 bloccano l’esecuzione degli script, rendendo l’automazione un vero problema. Fortunatamente, esistono alcuni modi per allentare queste restrizioni, quanto basta per far funzionare gli script senza trasformare il PC in un vero e proprio zoo. L’obiettivo è regolare i criteri di esecuzione in modo sicuro, assicurandosi di non aprire accidentalmente la porta a script sospetti. Dopo aver seguito questi passaggi, dovresti essere in grado di eseguire gli script di PowerShell senza problemi, sia in locale che tramite la rete.

Come risolvere il problema dello script di PowerShell non in esecuzione in Windows 11

Metodo 1: eseguire PowerShell come amministratore: un gioco da ragazzi

Questo è il primo passo più semplice. I criteri di esecuzione di PowerShell spesso richiedono privilegi di amministratore per essere modificati. Fai clic con il pulsante destro del mouse sul pulsante Start (o premi Win + X) e seleziona Terminale Windows (Amministratore) o Windows PowerShell (Amministratore). Deve essere eseguito con privilegi di amministratore, altrimenti i comandi non verranno eseguiti. Fai un rapido test eseguendo lo script in seguito. A volte, la semplice esecuzione come amministratore risolve il problema perché concede le autorizzazioni necessarie. In alcune configurazioni, questo è sufficiente, altre volte sarà necessario modificare ulteriormente le impostazioni.

Metodo 2: modificare i criteri di esecuzione per consentire gli script

Questa è la soluzione principale.È un po’ strano, ma Windows imposta di default un criterio restrittivo, che impedisce l’esecuzione della maggior parte degli script a meno che non siano firmati o specificamente considerati attendibili. Per allentare le impostazioni, apri di nuovo PowerShell con diritti di amministratore e digita:

Set-ExecutionPolicy RemoteSigned

Premi Enter. Quando richiesto, digita Ye premi Enterdi nuovo. Questo comando consente di eseguire liberamente script locali, ma controlla comunque le firme se si estrae codice da Internet. Su alcune macchine, questo comando potrebbe “fallire” la prima volta, poi funzionare dopo un riavvio – non si sa perché, ma è un meme nella community di PowerShell. Se non funziona immediatamente, riavvialo e riprova.

Metodo 3: modificare il registro per correzioni di livello profondo

Questo è un po’ più complesso, ma a volte i criteri di sistema sono rigidamente bloccati a livello di registro. Se modificare le impostazioni di PowerShell non è stato sufficiente, potrebbe essere necessario accedere al registro. Premere Windows + R, digitare regedite premere Enter. Prima di modificare i file del registro, esegui un backup del registro, perché a Windows piace complicare le cose.

Vai a:

HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows

Fai clic con il pulsante destro del mouse su Windows, seleziona Nuovo > Chiave e chiamalo PowerShell. Quindi, nella nuova PowerShellchiave, fai clic con il pulsante destro del mouse sul pannello di destra, scegli Nuovo > Valore DWORD (32 bit) e chiamalo EnableScripts. Fai doppio clic e imposta il valore su 1. Questo in pratica segnala a Windows di consentire gli script con un livello di sicurezza inferiore.

Chiudete l’editor del registro e riavviate il PC. Spesso è sufficiente, ma ricordate: modificare il registro può essere un po’ rischioso se non sapete cosa state facendo, quindi non esagerate. Inoltre, alcuni strumenti di sicurezza potrebbero comunque bloccare gli script, quindi controllateli.

Suggerimenti bonus e problemi comuni

Alcuni suggerimenti aggiuntivi perché Windows può essere imprevedibile:

  • Per prima cosa, esegui un backup del registro, nel caso in cui si verifichino errori.
  • Assicuratevi che il vostro software di sicurezza non stia bloccando PowerShell: a volte gli antivirus possono rivelarsi una vera seccatura.
  • Se i comandi generano errori, ricontrolla la sintassi, soprattutto se copi da guide. Windows ama gli errori di battitura.

E tieni presente: modificare le policy di esecuzione può essere rischioso se esegui script dannosi. Fai sempre attenzione a ciò che esegui. Meglio prevenire che curare, no?

Incartare

Eseguire gli script di PowerShell in Windows 11 non è proprio una passeggiata, ma è fattibile. Innanzitutto, spesso è utile eseguirli come amministratore, per poi allentare i criteri di esecuzione con Set-ExecutionPolicy. Quando questo non basta, entrano in gioco le modifiche al registro, che possono portare le cose al limite. Ricordatevi solo di effettuare backup e di ricontrollare i comandi. Una volta impostati, gli script dovrebbero essere eseguiti senza problemi, aiutandovi ad automatizzare ogni tipo di attività e a risparmiare tempo.

Domande frequenti

Qual è la politica di esecuzione in PowerShell?

È fondamentalmente il modo in cui Windows decide quali script possono essere eseguiti. Consideratelo come un cancello di sicurezza: quelli più bloccati impediscono l’esecuzione degli script, il che è positivo per la sicurezza ma fastidioso se si ha bisogno di automazione.

Posso ripristinare i criteri di esecuzione predefiniti?

Assolutamente. Basta eseguire Set-ExecutionPolicy RestrictedPowerShell come amministratore e il sistema si bloccherà di nuovo. Utile se vuoi annullare ciò che hai fatto o rafforzare nuovamente la sicurezza.

La modifica della policy di esecuzione comprometterà la sicurezza?

Può succedere se non si presta attenzione. Allentare le restrizioni significa che potrebbero essere eseguiti script dannosi se non si presta attenzione. Eseguite sempre e solo script provenienti da fonti affidabili, senza eccezioni.