Gli eseguibili di Windows (file EXE) sono la spina dorsale di molte applicazioni. Che si tratti di installare software, eseguire uno strumento di sistema o automatizzare attività, capire come avviare gli EXE è essenziale. Sebbene sia possibile eseguire questi file dall'interfaccia grafica, PowerShell è un altro strumento versatile amato da molti. In questo articolo ti guideremo nell'esecuzione di file eseguibili (EXE) da PowerShell.
L'esecuzione di file EXE da PowerShell consente di automatizzare processi ripetitivi, eseguire comandi con parametri specifici e integrare perfettamente attività eseguibili negli script. Questo metodo semplifica lo sfruttamento di tutto ciò che PowerShell può fare. Puoi gestire il tuo sistema Windows in modo più fluido e ottenere di più.
Metodo 1: eseguire il file EXE utilizzando .\ (punto barra)
Per eseguire un file eseguibile (EXE) situato nella directory di lavoro di PowerShell, utilizzare il prefisso .\ (punto barra). Ciò indica a PowerShell di eseguire il file dalla cartella attuale anziché cercarlo nelle directory nella variabile di ambiente PATH del sistema.
Passaggio 1: premi Windows + S sulla tastiera, digita PowerShell e fai clic su Esegui come amministratore. Seleziona Sì quando richiesto.
Passaggio 2: accedere alla posizione EXE. Usa il comando cd per andare alla cartella contenente il tuo file EXE. Ad esempio:
cd C:\Programmi\CartellaProgrammi
Passaggio 3: ora esegui l'EXE. Digitare .\ seguito dal nome del file EXE e premere Invio. Esempio:
.\mioprogramma.exe
Passaggio 4: in caso di problemi nell'individuazione dei file EXE, utilizzare il comando Get-ChildItem. Ecco come usarlo:
Get-ChildItem *.exe
Leggi anche: Come risolvere l'impossibilità di eseguire file EXE su Windows 11
Metodo 2: avviare un file EXE con l'aiuto di Call Operator (&)
L'operatore di chiamata (&) offre un modo semplice per eseguire file EXE direttamente dal prompt di PowerShell. L'utilizzo di questo metodo è ideale quando cerchi un'esecuzione rapida e semplice e non hai bisogno di un controllo complesso sul processo di lancio.
Passaggio 1: avvia la casella Esegui premendo Windows + R sulla tastiera. Digita PowerShell nella casella di ricerca e fai clic su OK.
Ora si aprirà una finestra di PowerShell, ma tieni presente che non è in modalità amministratore.
Passaggio 2: per eseguire PowerShell come amministratore, digitare il comando seguente e premere Invio. Inoltre, fare clic su Sì quando richiesto.
Start-Process powershell -Verbo runAs
Passaggio 4: ora si aprirà una nuova finestra di PowerShell dell'amministratore con uno sfondo blu come base.
Passaggio 5: nella nuova finestra Administrator PowerShell, digitare & operator seguito dal percorso completo del file EXE e premere Invio.
& 'C:\Programmi\Programma\Programma.exe'
Passaggio 6: se il file EXE richiede argomenti della riga di comando, aggiungili dopo il percorso del file. Ecco come farlo:
& 'C:\Programmi\ExampleSoftware\programma.exe' arg1 arg2 arg3
Nota: l'argomento /p nell'immagine seguente stamperà il file EXE il cui percorso è stato specificato successivamente.
Leggi anche: Come eseguire PowerShell come amministratore in Windows 11
Metodo 3: eseguire EXE tramite il cmdlet Invoke-Expression
Il cmdlet Invoke-Expression in PowerShell offre un modo per eseguire le stringhe come se fossero comandi diretti in modo dinamico. Ciò consente di eseguire file EXE fornendo il percorso completo dell'eseguibile. Questo metodo può salvarti la vita quando devi creare la stringa di comando per l'eseguibile in fase di runtime.
Passaggio 1: fare clic sull'icona di Windows, digitare PowerShell nella casella di ricerca e selezionare Esegui come amministratore. Quando viene visualizzato un popup, scegli Sì.
Passaggio 2: scrivi il comando seguente per eseguire un file EXE e premi Invio sulla tastiera.
Invoke-Expression -Comando "C:\percorso\nomefile.exe"
Passaggio 3: se desideri aggiungere argomenti durante l'avvio del file EXE, inserisci gli argomenti seguenti e premi Invio.
Espressione di chiamata "C:\percorso\del\tuo\file.exe arg1 arg2 arg3"
Se hai a che fare con uno script complicato che coinvolge percorsi e argomenti diversi, crea una variabile per questi percorsi e argomenti. Successivamente, puoi utilizzare questa variabile per semplificare il processo. Seguire i passaggi seguenti per farlo:
Passaggio 1: imposta il percorso dell'exe digitando i comandi seguenti e premendo Invio.
$exePath = "C:\miaapp.exe"
Passaggio 2: se desideri eseguire un eseguibile (EXE) con argomenti, scrivi i comandi seguenti e premi Invio.
$argomenti = "-arg1 -arg2"
Passaggio 3: infine, scrivi il codice seguente per eseguire un file eseguibile e premi Invio.
Espressione di chiamata "$exePath $arguments"
Metodo 4: avviare un file EXE utilizzando CMD /C
Il comando "CMD /C" in PowerShell crea essenzialmente un'istanza temporanea del classico prompt dei comandi (cmd.exe) per eseguire un comando specificato. Ecco come farlo:
Passaggio 1: fare clic sul pulsante Start, scrivere PowerShell e fare clic su Esegui come amministratore. Seleziona Sì per consentire all'app di apportare modifiche al tuo dispositivo.
Passaggio 2: digita il comando seguente per creare un'istanza cmd nella finestra di PowerShell e premi Invio.
cmd /c "percorso_del_tuo_file_exe"
Passaggio 3: se desideri eseguire argomenti, digita il codice seguente e premi il tasto Invio.
cmd /c "percorso_del_tuo_exe argomento1 argomento2"
Leggi anche: Differenza tra prompt dei comandi e PowerShell
Metodo 5: utilizzo del cmdlet Start-Process
Il cmdlet Start-Process offre un controllo significativo sul processo di esecuzione. Dovresti usarlo per specificare argomenti della riga di comando, regolare la directory di lavoro, reindirizzare l'output o avviare un processo con autorizzazioni elevate (diritti di amministratore) utilizzando determinati parametri.
Passaggio 1: premi Windows + S sulla tastiera, scrivi PowerShell e fai clic su Esegui come amministratore. Seleziona Sì nella finestra pop-up.
Passaggio 2: scrivi il comando seguente e premi Invio per aprire un'app EXE utilizzando Start-Process.
Nome del processo di avvio.exe
Passaggio 3: se desideri aprire un file EXE specifico, digita il seguente comando e premi Invio sulla tastiera.
Avvia-Processo -FilePath "filepath.exe"
Passaggio 4: puoi anche eseguire argomenti mentre passi i parametri. Scrivi il comando seguente per farlo e premi Invio.
Start-Process -FilePath "nomefile.exe" -argumentList "percorso_del_file_exe"
Leggi anche: Come aggiornare PowerShell in Windows
Parametri comuni
Ecco alcuni dei parametri più utili per personalizzare il funzionamento di Start-Process:
- -FilePath: specifica il percorso dell'eseguibile, dello script o del documento.
- -ArgumentList: fornisce un elenco di argomenti da passare al processo.
- -WorkingDirectory: imposta la directory di lavoro iniziale per il processo.
- -Verbo: Specifica l'azione da eseguire sul file (come “apri”, “modifica”, “stampa”). Usa Get-Verb per vedere i verbi disponibili.
- -WindowStyle: determina lo stile iniziale della finestra (Normale, Nascosto, Minimizzato, Ingrandito).
- -Wait: fa sì che PowerShell attenda la chiusura del processo prima di continuare.
- -PassThru: restituisce un oggetto processo, fornendo dettagli e controllo sul processo avviato.
Domande frequenti
1. Esistono rischi per la sicurezza associati all'esecuzione di file EXE da PowerShell?
Sì, l'esecuzione di file EXE da PowerShell comporta notevoli rischi per la sicurezza. L'EXE potrebbe essere dannoso, concedere agli aggressori l'accesso non autorizzato, eseguire codice dannoso o rubare dati.
2. Come posso gestire gli errori se l'esecuzione dell'EXE fallisce?
Utilizza i blocchi try…catch di PowerShell per acquisire potenziali errori durante l'esecuzione dell'EXE, consentendoti di registrare l'errore o intraprendere azioni correttive.
Esegui EXE con parametri
Ci auguriamo che i metodi sopra indicati ti aiutino a eseguire file eseguibili (EXE) da PowerShell. Puoi migliorare in modo significativo la tua capacità di automatizzare e gestire i processi basati su Windows utilizzando PowerShell. Quale preferiresti utilizzare, un'interfaccia utente grafica o un'interfaccia a riga di comando come PowerShell? Raccontacelo nei commenti qui sotto.