In generale, ci sono attività che eseguiamo manualmente sul nostro computer, come l'avvio di programmi, l'eliminazione di vecchi file o la pulizia di alcuni dati. Windows 10 ci offre anche la possibilità di aiutare ad automatizzare queste attività in modo da poter fare di più in meno tempo. Sebbene l'applicazione Utilità di pianificazione sia quella che offre l'ambiente più conveniente per questa attività, abbiamo anche altre opzioni come l'utilizzo PowerShell.
Sia CMD che PowerShell sono inclusi per impostazione predefinita in Windows e sono responsabili dell'elaborazione di comandi e script che ci consentiranno di avere un maggiore controllo sul sistema operativo. Tuttavia, nella maggior parte dei casi, per poter utilizzare e sfruttare i suoi vantaggi sarà necessario avere una conoscenza avanzata di Windows.
Ed è che utilizzando l'opzione PowerShell possiamo pianificare, modificare ed eliminare le attività. Questo può essere molto utile quando dobbiamo accelerare il processo di creazione di attività su più dispositivi o se dobbiamo creare uno script che deve interagire con la console. Ecco perché oggi vedremo come creare o eliminare attività, programmi, utilizzando Windows PowerShell.
Cos'è PowerShell ea cosa serve
Conosciuto anche come Windows PowerShell, è un file utilità della riga di comando che si presenta come una versione migliorata e avanzata del tradizionale Prompt dei comandi, che ci permetterà di eseguire diverse unioni di comandi, chiamate Script, facilitando così la creazione, la configurazione e l'automazione di più attività. È basato su .NET CLR, quindi è ideale per l'automazione dei processi. Pertanto, siamo di fronte a uno strumento che, data la sua flessibilità, viene solitamente utilizzato regolarmente sia dagli ingegneri che dagli analisti di sistema.
A differenza di altre interfacce della riga di comando come CMD, PowerShell può funzionare con oggetti oltre un semplice comando. Grazie alla sua completa interfaccia di scripting, possiamo svolgere funzioni specifiche sotto il sistema operativo Windows, come, ad esempio, lanciare diversi comandi per automatizzare diversi compiti. Inoltre, ci offre la possibilità di aggiungere altri comandi alla console che sono stati creati dagli utenti stessi.
Sebbene per molti utenti, soprattutto con una conoscenza di base di Microsoft sistema operativo, PowerShell è uno strumento completamente sconosciuto, la verità è che era già compatibile con Windows XP, con l'eccezione che era necessario scaricarlo per poterlo utilizzare. Dall'arrivo di Windows 10, PowerShell è già preinstallato, assumendo maggiore risalto e visibilità in modo che l'accesso sia più facile all'interno del sistema operativo Microsoft.
Crea un'attività pianificata con PowerShell
La prima cosa che dobbiamo fare è aprire PowerShell concedendogli i privilegi di amministratore. Per fare ciò, useremo il motore di ricerca del menu Start dove scriveremo powershell. Una volta visualizzata l'applicazione, faremo clic su Esegui come amministratore.
Successivamente, apparirà una finestra che ci avvisa che l'applicazione apporterà modifiche al dispositivo, quindi facciamo clic su Sì e apparirà visibilmente la schermata di PowerShell, da cui inizieremo a scrivere i comandi necessari per creare le nostre attività pianificate.
Una volta visualizzata la schermata di PowerShell, dobbiamo inserire il seguente comando:
$action = New-ScheduledTaskAction -Execute 'app-path'
Successivamente, dobbiamo tenere presente che dobbiamo sostituire il percorso dell'applicazione con il percorso originale dell'applicazione che vogliamo eseguire. Ad esempio, se vogliamo aprire Mozilla Firefox dobbiamo usare il file Firefox.exe, quindi il percorso completo sarebbe il seguente:
$action = New-ScheduledTaskAction -Execute 'C: / Archivos de programa / Mozilla Firefox / firefox.exe'
Nel caso in cui abbiamo bisogno di creare uno script PowerShell sarà necessario utilizzare "-argument" e specificare lo script. In questo modo il risultato finale dovrebbe essere tale
New-ScheduledTaskAction -Execute 'powershell.exe' -argument script-path
Il passaggio successivo consisterà nell'impostare il tempo in cui vogliamo eseguire l'attività che vogliamo programmare, potendo scegliere ogni momento di cui abbiamo bisogno. Possiamo scegliere tra il formato 12 o 24 ore. Nel caso in cui scegliamo un formato di 12 ore, dobbiamo accompagnarlo con AM / PM all'ora specificata nel comando. Ad esempio, possiamo programmare l'esecuzione del programma una volta alle 07:00 o alle 19:00 lo stesso giorno. Sarà inoltre possibile configurarlo per attivarlo giornalmente, settimanalmente, mensilmente, ecc.
Per questo dobbiamo usare il seguente comando:
$trigger = New-ScheduledTaskTrigger -Once -At 07:00PM
Successivamente, dobbiamo registrare l'attività che andremo a programmare dobbiamo inserire il seguente comando, cambiando DemoName, DemoTask e DemoDescription secondo le nostre preferenze:
Register-ScheduledTask -Action $action -Trigger $trigger -TaskPath "DemoName" -TaskName "DemoTask" -Description "DemoDescription"
Fatto ciò, il sistema avrà automatizzato l'attività che abbiamo programmato e verrà sempre eseguita all'orario che abbiamo impostato. Non appena non vogliamo più eseguire la programmazione di questo compito, dobbiamo procedere ad eliminarlo.
Elimina un'attività pianificata con PowerShell
Per eliminare qualsiasi attività del programma, è necessario riavviare PowerShell con privilegi di amministratore. Scriveremo powershell nel motore di ricerca del menu Start. Una volta visualizzata l'applicazione, fare clic su "Esegui come amministratore". Successivamente, apparirà una finestra che ci avvisa che l'applicazione apporterà modifiche al dispositivo, quindi, di nuovo, facciamo clic su Sì e la schermata di PowerShell apparirà visibilmente.
Una volta apparsa la finestra di PowerShell, dobbiamo inserire il seguente comando, sostituendo DemoTask con il nome dell'attività originale:
Unregister-ScheduledTask -TaskName "DemoTask" -Confirm: $false
Fatto ciò, premiamo invio e l'attività verrà eliminata. Facoltativamente, possiamo scrivere il seguente comando per confermare che l'attività è stata eliminata e assicurarci che non continui a essere eseguita secondo una pianificazione. Per questo scriveremo:
Get-ScheduledTask -TaskName "DemoTask"
Questo comando avrà il compito di confermare che l'attività DemoTask non è più disponibile. Una volta completati i passaggi, dovremmo ricevere un messaggio di errore. Questo ci dirà che non ci sono attività con quel nome specifico. Ciò significa che l'attività che avevamo programmato è già stata correttamente eliminata in precedenza.
Gestisci le attività pianificate con PowerShell
Il comando di Windows PowerShell ci consentirà anche di gestire le attività. Per questo utilizziamo il comando Get-ScheduledTask che sarà responsabile della restituzione di tutte o alcune delle attività pianificate dal nostro team.
Per eseguire questa azione sarà solo necessario avviare PowerShell come amministratore e una volta nella finestra scrivere il seguente comando:
Get-ScheduledTask
Utilizzando solo il comando di base, tutte le attività sul computer verranno elencate ordinate per percorso. Possiamo vedere come è incluso il percorso del task, il nome del task e lo stato in cui si trova. Tramite il nome possiamo identificare il task mentre la sezione state (State) indicherà se è attivato o disattivato.
In PowerShell possiamo anche disabilitare o abilitare le attività selezionate, utilizzando i comandi Disable-ScheduledTask e Enable-ScheduledTask. Nel caso in cui eseguiamo i comandi direttamente, sarà necessario specificare il nome dell'attività o delle rotte.
Ad esempio, se vogliamo disabilitare le attività relative a Google, utilizzeremo il comando Disable-ScheduledTask, che avrà il compito di disabilitarlo. Per questo scriviamo il seguente comando.
Get-ScheduledTask -taskname google* | Disable-ScheduledTask
Nel caso in cui volessimo attivare tutte le attività di Google, utilizzeremo il comando che useremo la stessa riga di comando sopra tranne che in questo caso utilizzeremo alla fine Enable-ScheduledTask, che sarà incaricato di ordinare l'abilitazione di l'obiettivo.
Get-ScheduledTask -taskname google* | Enable-ScheduledTask