Correzione dell'attività pianificata non eseguita per il file .BAT

Se si dispone di un file .BAT e si sta tentando di eseguirlo automaticamente utilizzando l' Utilità di pianificazione(Task Scheduler) in Windows , è possibile che si sia verificato il problema in cui semplicemente non viene eseguito a meno che non si esegua manualmente l'attività.

Ho creato un file batch che elimina tutto all'interno di una cartella temporanea ogni volta che il computer si avvia. Ho creato un'attività di base in Utilità di pianificazione(Task Scheduler) e speravo per il meglio. Sfortunatamente, non è successo nulla quando il mio computer si è avviato. Dopo molti tentativi ed errori, ho capito come eseguire lo script.

In questo articolo, ti guiderò attraverso le impostazioni e le autorizzazioni che devi regolare per far funzionare il tuo file batch senza intervento manuale.

Passaggio 1: controlla le autorizzazioni File/Folder

Il primo passaggio per risolvere questo problema è assicurarsi che l'account utilizzato per eseguire lo script in Utilità di pianificazione(Task Scheduler) disponga delle autorizzazioni di controllo completo(Full Control) sulla cartella contenente lo script, lo script stesso e tutte le cartelle/file toccati dallo script durante l'esecuzione.

Ad esempio, ho creato il seguente script batch di seguito:

set folder="C:\test"
cd /d %folder%
for /F "delims=" %%i in ('dir /b') do (rmdir "%%i" /s/q || del "%%i" /s/q)

Ho salvato il file .BAT nella mia cartella Documenti. Il percorso è C:\Users\username\Documents . Sono andato su C:\Users\username, ho fatto clic con il pulsante destro del mouse sulla cartella Documenti e ho fatto clic su (Documents)Properties . Quindi ho fatto clic sulla scheda Sicurezza .(Security)

Come puoi vedere, l'account utente Aseem è stato esplicitamente aggiunto e gli è stata data l' autorizzazione Controllo completo.(Full Control) Ora devi fare la stessa cosa per la cartella che contiene lo script e per lo script stesso. Non dare per scontato che se dai i permessi alla cartella contenente lo script, sei a posto, perché non lo sei. Infine, imposta le autorizzazioni su tutti i file e le cartelle con cui lo script interagirà.

Nel mio caso, dovevo andare su C:\test , fare clic con il pulsante destro del mouse su quella cartella e aggiungere il mio account utente lì con autorizzazioni di controllo completo . (Full Control)È un po’ fastidioso doverlo fare, ma è l’unico modo per far eseguire lo script.

Nota: l'account utilizzato per eseguire lo script deve far parte del gruppo Administrators locale sul computer. Nel mio caso, l'account Aseem è un account amministratore e quindi parte del gruppo Administrators locale. (Note: The account that is being used to run the script has to be part of the local Administrators group on the computer. In my case, the Aseem account is an administrator account and therefore part of the local Administrators group. )

Passaggio 2: controlla le impostazioni dell'Utilità di pianificazione(Task Scheduler Settings)

Ora andiamo su Utilità di pianificazione(Task Scheduler) e modifichiamo lì le impostazioni appropriate. Apri Utilità di pianificazione(Task Scheduler) e trova la tua attività nella sezione Attività attive( Active Tasks) . Dovrebbero essere elencati in ordine alfabetico.

Fare doppio clic su di esso e si aprirà l'attività da sola nella stessa finestra. Per modificare l'attività, dovrai fare clic con il pulsante destro del mouse su di essa e scegliere Proprietà(Properties) .

Ci sono diverse schede e un paio di cose devono essere controllate e modificate qui. Innanzitutto, nella scheda Generale(General) , è necessario controllare l'account utente utilizzato per eseguire l'attività. Nel mio caso, è l' account Aseem , a cui avevo concesso le autorizzazioni in precedenza sul file system e che fa parte del gruppo Administrators sul computer.

Successivamente, devi scegliere l' opzione Esegui se l'utente è connesso o meno( Run whether user is logged on or not) e scegliere Windows Vista, Windows Server 2008 nella casella Configura per(Configure for) .

Nella scheda Azioni(Actions) , devi selezionare lo script, fare clic su Modifica(Edit) e quindi aggiungere il percorso alla cartella contenente lo script nella casella Inizia in (opzionale)(e Start in (optional)) . Può sembrare superfluo, ma non lo è. Nel mio caso, ho inserito C:\Users\Aseem\Documents\ nella casella.

Ora fai clic su OK per salvare le impostazioni. Quando si esegue questa operazione, potrebbe essere visualizzata una finestra di dialogo in cui è necessario immettere la password per l'account utente che eseguirà l'attività. Questo fa emergere un altro requisito. Non puoi usare un account che non ha una password. L'account utente deve disporre di una password affinché l'attività possa essere eseguita.

Infine, dovresti eseguire l'attività manualmente una volta in Utilità di pianificazione(Task Scheduler) per assicurarti che venga eseguita. Se funziona correttamente manualmente dopo aver modificato tutte le impostazioni, dovrebbe funzionare quando dovrebbe essere attivato. Nel mio caso, doveva accadere all'avvio e dopo aver apportato le modifiche, tutto ha funzionato correttamente.

Tieni presente che se lo script accede a diversi computer in un dominio durante l'esecuzione, dovresti provare a utilizzare l'account dell'amministratore del dominio per eseguire l'attività. Ciò garantirà che l'account disponga di autorizzazioni sufficienti per accedere ai computer remoti.

Un altro elemento da notare è se lo script accede alle risorse su una condivisione di rete. Se lo script utilizza lettere per accedere alla rete, potrebbe non essere eseguito. Ad esempio, invece di usare F:\data\ , dovresti usare \\machinename\share_name\data\ Â nello script. Se non riesci ancora a far eseguire lo script, pubblica un commento qui e cercherò di aiutarti. Divertiti!



About the author

Con una vasta esperienza in Windows 10 e smartphone, sono un forte sostenitore di Microsoft Edge e delle capacità che offre. Oltre ad essere un esperto di errori e wifi, so utilizzare strumenti come OneDrive e Cortana per semplificare il tuo lavoro.



Related posts