How To

Come eseguire file EXE utilizzando PowerShell

February 15, 2026 4 minuti di lettura Updated: February 15, 2026

Eseguire un file eseguibile (.exe) è piuttosto semplice se si fa doppio clic su di esso. Ma se si stanno automatizzando delle attività, ad esempio creando script per installare programmi, configurare ambienti o eseguire attività di manutenzione, è necessario acquisire familiarità con il modo in cui Windows PowerShell gestisce questi file.È un po’ strano, ma PowerShell offre diversi modi per eseguire un file.exe e a volte il metodo più semplice non funziona, a seconda della configurazione o della posizione del file. Questo può essere particolarmente frustrante se si sta analizzando in dettaglio gli script o si cerca di far funzionare le cose senza l’intervento dell’utente.

Inoltre, se gestisci server o PC da remoto, sapere come eseguire programmi da uno script o dalla riga di comando può farti risparmiare un sacco di tempo. L’obiettivo è comprendere alcuni metodi affidabili e testati per far funzionare l’eseguibile senza problemi di permessi o problemi di percorso. Se tutto funziona correttamente, i comandi di PowerShell eseguiranno il file come se avessi fatto doppio clic. Aspettati un po’ di tentativi ed errori, poiché elementi strani come spazi nei nomi dei file o nei permessi possono creare problemi. Ma sì, una volta capito, ti chiederai perché all’inizio ti è sembrato così complicato. Perché, ovviamente, Windows a volte deve renderlo più difficile del necessario.

Come eseguire un file.exe in Powershell?

Quando si tenta di eseguire un eseguibile da PowerShell, assicurarsi di puntare alla posizione corretta e di utilizzare la sintassi corretta. Sostituisci nomefile o percorso con i dettagli effettivi del file, ma non includere < >parentesi: servono solo per strutturare il testo. Inoltre, tieni presente che i comandi potrebbero essere sensibili agli spazi nei nomi di file o nelle directory, quindi è fondamentale citare i percorsi con spazi.

Esegui direttamente senza parametri utilizzando l’operatore &

Questo è il metodo più comune. Il &simbolo (a volte chiamato operatore di chiamata) dice a PowerShell: “Ehi, esegui questo file”.È flessibile perché è possibile assegnargli percorsi completi o relativi e funziona per la maggior parte degli scenari più semplici. Ecco cosa fare:

  • Apri PowerShell come amministratore: premi Windows + R, digita powershell, quindi premi Ctrl + Maiusc + Invio.(A volte è necessario se l’app richiede diritti di amministratore.)
  • Se il file.exe si trova nella stessa directory in cui ti trovi, digita: & '.\filename.exe'..\Significa “guarda qui” nella cartella corrente.
  • Se si trova in un altro posto e conosci il percorso completo, digita: & 'C:\Path\To\Your\File.exe'. Assicurati di racchiudere i percorsi tra virgolette se contengono spazi, ad esempio & 'C:\Program Files\MyApp\app.exe'.

Cosa sta succedendo qui? Beh, &fa sì che PowerShell capisca che vuoi eseguire quel file come un programma, non solo trattarlo come una stringa. A volte accadono cose strane: in alcune configurazioni, potrebbe essere necessario un secondo tentativo o un riavvio per una registrazione completa. Non so perché, ma sembra che Windows cerchi sempre di essere subdolo con l’esecuzione degli script.

Utilizzo di Start-Process: il metodo PowerShell Power-User

Start-Process è come un coltellino svizzero per avviare le app.È perfetto se si desidera un maggiore controllo, ad esempio attendere la chiusura del programma prima di proseguire, o eseguirlo con diritti di amministratore senza dover avviare manualmente PowerShell come amministratore.

Perché è utile: più opzioni, come l’attesa del completamento, il passaggio di argomenti o l’elevazione dei privilegi.

Quando si applica: se lo script deve attendere il completamento dell’eseguibile o eseguirlo con privilegi specifici.

Risultato previsto: il programma si avvia e gli script proseguono una volta terminato (se -Waitutilizzato).

  • Utilizzo di base:Start-Process -FilePath “C:\Path\To\Program.exe”
  • In attesa del completamento del processo:Start-Process -FilePath “C:\Path\To\Program.exe” -Wait
  • Esecuzione come amministratore:Start-Process -FilePath “C:\Path\Program.exe” -Verb RunAs

Ricorda, questo è utile se vuoi automatizzare l’avvio di un’app e assicurarti che venga completata prima di continuare. A volte, questo è l’unico metodo affidabile quando si ha a che fare con script di installazione o processi batch che dipendono dal completamento dei passaggi precedenti.

Utilizzo di Invoke-Expression — Meh, meglio starne alla larga la maggior parte delle volte

Questa cosa mi mette un po’ i brividi, sinceramente. Microsoft non ne consiglia l’uso Invoke-Expressionper l’esecuzione di file eseguibili perché è vulnerabile all’iniezione di script e può essere una vera seccatura da debuggare.

Ma se sei sicuro di cosa stai facendo, puoi eseguire un file eseguibile se passi il comando giusto. In questo modo:

Invoke-Expression -Command ".\Path\To\File.exe"

Di solito funziona quando ci si trova già nella directory del file, nel qual caso basta il nome del file. Se ci si trova in una directory diversa, specificare il percorso completo: Invoke-Expression -Command "D:\Folder\File.exe". Attenzione però: questo metodo può essere inaffidabile o poco sicuro se si accettano input da altri. Onestamente, evitatelo a meno che non siate assolutamente certi che nulla possa andare storto, perché gli script dannosi possono insinuarsi con una certa facilità.

A volte, su alcuni sistemi, questo metodo potrebbe generare un errore o non essere eseguito immediatamente.È un po’ strano, ma succede. E no, Microsoft non è più una grande fan di questo approccio, quindi usatelo con parsimonia.

Nota: per la maggior parte degli scopi pratici, metodi come &o Start-Processsono più affidabili, soprattutto quando si creano script per ambienti di produzione. Il metodo invoke è più un’ultima risorsa o per test rapidi e approssimativi.