- - Come eseguire automaticamente gli script PowerShell su Windows 10

Come eseguire automaticamente gli script di PowerShell su Windows 10

PowerShell ha molti livelli diversi disicurezza che impedisce l'esecuzione di script e comandi dannosi. Ad esempio, per impostazione predefinita non è possibile eseguire uno script scaricato da Internet a meno che non si modifichino i criteri di esecuzione di PowerShell. Altre misure di sicurezza ti impediscono di eseguire uno script facendo doppio clic su di esso. Non è possibile associare gli script PS1 a PowerShell e l'unico modo per eseguire uno script è fare clic con il pulsante destro del mouse e selezionare l'opzione di esecuzione. Facendo doppio clic su di esso si aprirà nel Blocco note. Questo è ottimo per una misura di sicurezza ma è fastidioso se si desidera eseguire uno script PowerShell quando viene eseguita un'attività pianificata. Il lavoro è semplice. È possibile utilizzare uno script batch per eseguire automaticamente gli script di PowerShell.

Script batch

Di seguito è riportato lo script batch necessario per eseguire automaticamente gli script PowerShell su Windows 10. Ogni script PowerShell avrà bisogno del proprio script batch.

Sintassi

@ECHO OFF
PowerShell.exe -Command "Path to script"
PAUSE

Sostituisci "Path to script" con il percorso effettivo dello script PowerShell che desideri eseguire. Considera il seguente esempio;

Esempio

@ECHO OFF
PowerShell.exe -Command "C:Reminder-ScriptsMilkBuy-Milk.ps1"
PAUSE

Apri Blocco note e incolla lo script in esso. Salvare il file con l'estensione .bat.

Ciò che fa questo file batch è che si aprePowerShell e quindi esegue lo script a cui lo hai indicato. Non è ancora possibile fare doppio clic su uno script PowerShell sul desktop e farlo funzionare automaticamente in PowerShell. Il file corrente aprirà una finestra del prompt dei comandi e mostrerà il messaggio "Premi un tasto qualsiasi per continuare". Quando si preme un tasto, solo allora verrà eseguito lo script PowerShell. Se si preferisce l'esecuzione dello script senza che sia necessario intervenire, modificare lo script sopra e rimuovere la riga "PAUSA". Dovrebbe sembrare come questo;

@ECHO OFF
PowerShell.exe -Command "Path to script"

Utilità di pianificazione e script PowerShell

Supponiamo che tu voglia eseguire automaticamente aScript di PowerShell come azione per un'attività pianificata. A tale scopo, è necessario innanzitutto creare uno script Batch corrispondente, come mostrato sopra, per eseguire lo script PowerShell. Successivamente, quando si crea un'attività pianificata, selezionare lo script Batch sotto l'Azione che dovrebbe eseguire in risposta a un trigger. Questo, in effetti, eseguirà lo script PowerShell.

Abbiamo usato l'Utilità di pianificazione come esempio qui mase stai utilizzando un'altra app di automazione, dovrai comunque chiamare lo script Batch. L'unica eccezione è se l'app di automazione che stai utilizzando può aprire PowerShell e quindi puntare allo script PowerShell.

Commenti