Γεννήτρια & επεξήγηση εκφράσεων Cron
Φτιάξτε ένα πρόγραμμα crontab με κλικ ή επικολλήστε ένα υπάρχον. Παίρνετε επεξήγηση σε απλά ελληνικά, έλεγχο ανά πεδίο και τις επόμενες 10 εκτελέσεις στη ζώνη ώρας σας.
Τρέχει στον browser σαςΧωρίς εγγραφήΤίποτα δεν ανεβαίνει
Οπτικός δημιουργός
Επόμενες 10 εκτελέσεις
Πώς να χρησιμοποιήσετε: Γεννήτρια εκφράσεων Cron
- Πληκτρολογήστε μια έκφραση cron όπως
*/15 * * * *ή πατήστε μια προεπιλογή. - Διαβάστε την περιγραφή σε απλά ελληνικά για να βεβαιωθείτε ότι κάνει αυτό που περιμένετε. Τα μη έγκυρα πεδία επισημαίνονται μαζί με την αιτία.
- Χρησιμοποιήστε τις καρτέλες του Οπτικού δημιουργού για να ορίσετε λεπτό, ώρα, ημέρα μήνα, μήνα και ημέρα εβδομάδας με Κάθε, Κάθε N, Επιλογή ή Εύρος.
- Ελέγξτε τις επόμενες 10 εκτελέσεις και διαλέξτε τη ζώνη ώρας του server αν διαφέρει από τη δική σας.
- Αντιγράψτε την έκφραση στο crontab σας, σε ένα Kubernetes CronJob, στο
scheduleτου GitHub Actions ή στις ρυθμίσεις του CI.
Η σύνταξη του cron σε ένα λεπτό
Μια τυπική έκφραση cron έχει πέντε πεδία χωρισμένα με κενά:
┌───────────── minute (0-59)
│ ┌─────────── hour (0-23)
│ │ ┌───────── day of month (1-31)
│ │ │ ┌─────── month (1-12 or JAN-DEC)
│ │ │ │ ┌───── day of week (0-7 or SUN-SAT, 0 and 7 are Sunday)
│ │ │ │ │
* * * * * command
| Σύμβολο | Σημασία | Παράδειγμα |
|---|---|---|
* | κάθε τιμή | * * * * * κάθε λεπτό |
, | λίστα | 0 9,17 * * * στις 09:00 και στις 17:00 |
- | εύρος | 0 9 * * 1-5 καθημερινές στις 09:00 |
/ | βήμα | */10 * * * * κάθε 10 λεπτά |
@daily | μακροεντολή | ίδιο με 0 0 * * *· επίσης @hourly, @weekly, @monthly, @yearly, @reboot |
Η παγίδα ημέρας μήνα / ημέρας εβδομάδας
Όταν και τα δύο πεδία ημέρας είναι περιορισμένα (κανένα δεν ξεκινά με *), το cron εκτελείται όταν ταιριάζει οποιοδήποτε από τα δύο. Έτσι, το 0 0 13 * 5 εκτελείται κάθε 13η του μήνα και κάθε Παρασκευή, όχι μόνο την Παρασκευή και 13. Η γεννήτρια ακολουθεί αυτόν τον κανόνα του Vixie cron και η περιγραφή γράφει «ή» ώστε να το προσέξετε.
Ζώνες ώρας και θερινή ώρα
Το cron χρησιμοποιεί την τοπική ζώνη ώρας του server, εκτός αν έχει ρυθμιστεί διαφορετικά (CRON_TZ= σε ορισμένες υλοποιήσεις cron, timeZone στα Kubernetes CronJobs· το GitHub Actions χρησιμοποιεί πάντα UTC). Επιλέξτε αυτή τη ζώνη στην προεπισκόπηση εκτελέσεων. Εργασίες που πέφτουν μέσα σε κενό θερινής ώρας (για παράδειγμα 02:30 τη νύχτα που οι ώρες πάνε μπροστά) παραλείπονται στην προεπισκόπηση, επειδή αυτή η τοπική ώρα δεν υπάρχει ποτέ.
Συνηθισμένα προγράμματα
*/5 * * * *: κάθε 5 λεπτά0 */2 * * *: κάθε 2 ώρες, στην ακριβή ώρα0 9 * * 1-5: 09:00 τις καθημερινές0 0 1 * *: μεσάνυχτα την πρώτη ημέρα κάθε μήνα0 3 * * 0: 03:00 κάθε Κυριακή, τυπικό παράθυρο για backup
Συχνές ερωτήσεις
Πώς εκτελώ ένα cron job κάθε 5 λεπτά;
*/5 * * * *. Το βήμα /5 στο πεδίο των λεπτών σημαίνει κάθε 5ο λεπτό ξεκινώντας από το 0: 00, 05, 10 κ.ο.κ.Υποστηρίζει το cron δευτερόλεπτα;
Η Κυριακή είναι 0 ή 7;
SUN ή MON-FRI.Γιατί η εργασία μου εκτελείται σε περισσότερες ημέρες από όσες περίμενα;
* ώστε να απαιτείται μόνο το άλλο.