Έκφραση Cron Γεννήτρια
Δημιουργήστε, εξηγήστε και επικυρώστε εκφράσεις cron αμέσως στο πρόγραμμα περιήγησής σας. Εργαλείο δημιουργίας οπτικών και αναλυτής εκφράσεων — δωρεάν, ιδιωτικό και από την πλευρά του πελάτη.
Δημιουργήστε, εξηγήστε και επικυρώστε εκφράσεις cron αμέσως στο πρόγραμμα περιήγησής σας. Εργαλείο δημιουργίας οπτικών και αναλυτής εκφράσεων — δωρεάν, ιδιωτικό και από την πλευρά του πελάτη.
Οι εκφράσεις Cron είναι πέντε (ή έξι, ανάλογα με το σύστημα) πεδία χωρισμένα σε χώρο και περιγράφουν ένα χρονοδιάγραμμα: λεπτό, ώρα, ημέρα του μήνα, μήνα και ημέρα της εβδομάδας. Κάθε πεδίο δέχεται αριθμητικές τιμές, εύρη, λίστες, αυξήσεις και χαρακτήρες μπαλαντέρ. Το Cron είναι η de facto μορφή προγραμματισμού Unix από τα τέλη της δεκαετίας του 1970 και τώρα χρησιμοποιείται πολύ πέρα από το Unix — από Kubernetes CronJobs, GitHub Actions, κανόνες AWS EventBridge, εργασίες Jenkins και σχεδόν κάθε άλλο σύστημα προγραμματισμού στην παραγωγή.
Η ανάγνωση και η εγγραφή εκφράσεων cron με το χέρι είναι επιρρεπής σε σφάλματα. Τα πεδία είναι τοποθετημένα, η αλληλεπίδραση ημέρας του μήνα και ημέρας της εβδομάδας δεν είναι προφανής (μια τιμή σε κάθε πεδίο ενεργοποιεί την εργασία, όχι και στα δύο) και τα λάθη παράγουν σιωπηλά χρονοδιαγράμματα που φαίνονται σωστά αλλά ενεργοποιούνται σε λάθος στιγμές. Μια γεννήτρια που μεταφράζει χρονοδιαγράμματα απλά-αγγλικά σε σωστή σύνταξη cron αποφεύγει αυτά τα λάθη.
Αυτό το εργαλείο προσφέρει δύο κατευθύνσεις: δημιουργία μιας έκφρασης cron από μια φιλική μορφή (κάθε Δευτέρα στις 9 π.μ., κάθε 5 λεπτά κατά τις εργάσιμες ώρες) και επεξήγηση μιας υπάρχουσας έκφρασης cron με ανθρώπινους όρους. Και οι δύο εκτελούνται στο πρόγραμμα περιήγησής σας χωρίς καμία αλληλεπίδραση με τον διακομιστή.
Η σύνταξη του Cron είναι πυκνή και αδυσώπητη. Τα συνηθισμένα λάθη περιλαμβάνουν τη σύγχυση της αρίθμησης ημέρας της εβδομάδας (η Κυριακή είναι 0 ή 7 ανάλογα με το σύστημα), να ξεχνάμε ότι η ημέρα του μήνα και η ημέρα της εβδομάδας χρησιμοποιούν τη σημασιολογία Ή και την παρανόηση της σύνταξης προσαύξησης (*/5 σημαίνει κάθε 5 που ξεκινά από το 0). Μια γεννήτρια τα πιάνει με κατασκευή — οι παραγόμενες εκφράσεις ταιριάζουν με αυτό που περιγράψατε στη φόρμα.
Η ανάγνωση των υπαρχουσών εκφράσεων είναι εξίσου δύσκολη. Ένα πρόγραμμα όπως το 0 9 * * 1-5 διαβάζεται όπως κάθε καθημερινή στις 9 π.μ. αφού γνωρίζετε τη σύνταξη, αλλά όποιος δεν είναι εξοικειωμένος με το cron πρέπει να αναζητήσει κάθε πεδίο. Η εξήγηση της έκφρασης με ανθρώπινους όρους είναι πιο γρήγορη από την εκμάθηση της σύνταξης για μεμονωμένες αλληλεπιδράσεις.
Επιλέξτε ένα μοτίβο χρονοδιαγράμματος, λάβετε την έκφραση cron.
Το τυπικό cron έχει πέντε πεδία: λεπτό (0–59), ώρα (0–23), ημέρα του μήνα (1–31), μήνα (1–12), ημέρα της εβδομάδας (0–6 ή 0–7, και τις δύο Κυριακή). Κάθε πεδίο δέχεται μια μεμονωμένη τιμή, λίστα διαχωρισμένη με κόμμα, εύρος με παύλα, αύξηση με / ή μπαλαντέρ με *.
Χρήση ημέρας του μήνα και ημέρας της εβδομάδας Ή σημασιολογία: εάν κάποιο από τα δύο έχει οριστεί σε τιμή χωρίς χαρακτήρες μπαλαντέρ, η εργασία εκτελείται όταν τα δύο ταιριάζουν. Αυτό είναι αδιανόητο, αλλά ταιριάζει με τη συμπεριφορά cron του POSIX. Η ρύθμιση και των δύο πεδίων παράγει ένα ευρύτερο χρονοδιάγραμμα, όχι ένα στενότερο.
Οι επεκτάσεις διαφέρουν ανάλογα με την υλοποίηση. Μερικοί δέχονται ένα έκτο πεδίο για δευτερόλεπτα (Quartz, Spring). κάποιοι δέχονται; ως εναλλακτική μπαλαντέρ? Ορισμένες περιλαμβάνουν συντομεύσεις @yearly, @monthly, @daily. Η γεννήτρια παράγει τυπικό cron 5 πεδίων κατάλληλο για τα περισσότερα συστήματα.