Qual è la versione Windows di cron? [chiuso]


278

Una ricerca di Google ha rivelato un software che svolge le stesse funzioni di cron, ma niente incorporato in Windows.

Sto utilizzando Windows XP Professional, ma i consigli per qualsiasi versione di Windows potrebbero essere potenzialmente utili a qualcuno.

C'è anche un modo per invocare questa funzione (che in base alle risposte è chiamata l'Utilità di pianificazione) a livello di codice o tramite la riga di comando?


5
Di quale funzionalità cronhai bisogno che l'Utilità di pianificazione non fornisce?
Chris Jester-Young,

2
Cron invia e-mail a stdout e stderr all'utente: come possiamo farlo nell'Utilità di pianificazione?
user3450049,

@ user3450049: è sempre possibile aggiungere un'attività nella sezione azioni per inviare i registri per posta. Puoi usare Telnet o Sendmail come preferisci. Vedere stackoverflow.com/questions/18652001/send-mail-via-cmd-console
0zkr PM

Risposte:


294

Per la domanda originale, chiedendo di Windows XP (e Windows 7): Utilità di pianificazione di Windows

Per l'utilizzo da riga di comando, è possibile pianificare con il comando AT .

Per le versioni più recenti di Microsoft OS, Windows Server 2012 / Windows 8, guarda l' utilità della riga di comando di schtasks .
Se si utilizza PowerShell, i cmdlet Attività pianificate in Windows PowerShell vengono creati per lo scripting.


12
In Windows 10 at.exeè obsoleto e non funzionerà. schtasks.exeè difficile da usare (ad es. non verrà eseguito senza i privilegi di amministratore) e corretto (ad es. l' /Zinterruttore).
Vlastimil Ovčáčík,

che dire di windows 7?
Tarik,

@Tarik Windows 7 supporterà anche l'Utilità di pianificazione.
Kris Kumler,

Il mio Windows 7 cmd ha AT e schtasks. C'è una differenza / preferenza? Perché entrambi?
jiggunjer,

7
L'Utilità di pianificazione è un tale cassonetto di un software. Ogni volta che lo apro c'è una probabilità del 50/50 che ridurrà il framerate dell'intero computer fino a 3 fps mentre provo a caricare una vista da tavolo di 6 elementi simili
Matt M.


10

Il comando 'at'.

"Il comando AT pianifica l'esecuzione di comandi e programmi su un computer a una data e ora specificate. Il servizio Pianificazione deve essere in esecuzione per utilizzare il comando AT."


deprezzato, utilizzare schtasks.exe.
Keramat,

10

Utilizzare l'Utilità di pianificazione di Windows per pianificare attività nel tempo e nelle date.


10

pycron è una corrispondenza ravvicinata su Windows. Sono supportate le seguenti voci:

1    Minute (0-59)
2    Hour (2-24)
3    Day of month (1-31)
4    Month (1-12, Jan, Feb, etc)
5    Day of week (0-6) 0 = Sunday, 1 = Monday etc or Sun, Mon, etc)
6    User that the command will run as
7    Command to execute

1
Questo non è uno strumento conmmand-line. Come vedo, controlla solo se l'ora attuale corrisponde alle tue impostazioni.
Mithril,

Questo è semplicemente un parser, non esegue le attività.
Kubuntuer82,

8

Esiste anche un modo per invocare questa funzione (che in base alle risposte si chiama Task Scheduler) programmaticamente [...]?

API dell'utilità di pianificazione su MSDN.


7

L'equivalente più vicino sono le Attività pianificate di Windows (Pannello di controllo -> Attività pianificate), sebbene siano molto lontane dal cron.

La differenza più grande (per me) è che richiedono un utente per accedere alla finestra di Windows e un account utente (con password e tutto), il che rende le cose un incubo se la tua politica di sicurezza locale richiede periodicamente la modifica della password. Penso anche che sia meno flessibile di cron per quanto riguarda l'impostazione degli intervalli per l'esecuzione degli elementi.


2
Mentre cron è decisamente superiore alle attività di Windows, puoi effettivamente utilizzare l'account "SISTEMA" del computer che non richiede una password e dispone delle autorizzazioni complete per il computer locale. Sebbene ciò abbia ovviamente problemi se si utilizzano risorse esterne (come un'unità condivisa che richiede credenziali di dominio).
Steve Bauman,

@SteveBauman La chiave è RISORSE LOCALI, Windows potrebbe avere il miglior programmatore di attività in assoluto ma se quell'attività può funzionare solo su risorse locali è inutile al 100% se devi fare qualcosa di semplice come copiare un backup sul PC locale su una pianificazione .
krowe2,



6

Se preferisci un buon vecchio cron, CRONw è la strada da percorrere.

Supported systems

* Windows 2000 (any version)    works
* Windows XP (SP 2)             works
* Windows Server 2003           works
* Windows NT 4 (SP 6)           should work but not tested
* Windows 3.11, Windows 95,
  Windows 98, Windows ME,
  Windows XP beneath SP2        not supported by design

1
Ho provato questo, e quando finalmente l'ho installato e ho provato a provarlo, tutto ciò che ho ricevuto è stato questo messaggio: We were asked to go - so I'm out finally...qualsiasi comando ho provato mi ha inviato quel messaggio. WTF? Questo progetto non è più attivo o qual è il significato di quel messaggio ?? GRAZIE
Metafaniel

1
@Metafaniel, non ho un sistema Windows da circa 4 o 5 anni, quindi non ho tenuto il passo. Cercare su Google quella risposta mi porta solo a questa pagina e non vedo nulla sul loro sito sulla chiusura. Guardando il repository di sourceforge , sembra che non sia cambiato da circa un decennio, quindi mi chiedo se forse c'è qualche tipo di conflitto nel tuo sistema locale? Considerando che è passato tanto tempo dall'ultimo aggiornamento, direi sicuramente che non è più attivo, sebbene sia una risposta davvero strana.
enobrev,

1
@Metafaniel Ho anche scaricato e grepped la base di codice per quel messaggio e non ho trovato nulla. Buona fortuna a capire cosa sta succedendo!
enobrev,

1
@Metafaniel Come menzionato nel post, per Windows oltre XP SP2 non è supportato.
LoMaPh


2

Oltre all'Utilità di pianificazione di Windows, hai anche "at" su Windows. Non sono sicuro di come differisca dall'Utilità di pianificazione oltre al fatto che ha un'interfaccia a riga di comando.



1
  1. È possibile utilizzare l' API Scheduled-Tasks in PowerShell insieme a un file config.json per l'input dei parametri. Immagino che il limite minimo sia di 5 minuti. Un'esercitazione di esempio per la creazione di attività di pianificazione di base tramite API

  2. Puoi usare schtasks.exe anche tramite cmd. Ho potuto vedere la limitazione del modificatore dei minuti a 1 minuto sull'esecuzione di schtasks.exe / Crea / ?. Comunque AT ora è deprecato.

inserisci qui la descrizione dell'immagine

Ad ogni modo, sto lavorando a uno strumento per comportarmi come CRON. Aggiornerò qui se ha successo.


Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.