DevBox Γρήγορα εργαλεία για προγραμματιστές, χωρίς εγγραφή

Αναλυτής Εκφράσεων Cron

Εισαγάγετε μια τυπική έκφραση cron 5 πεδίων για να δείτε τι σημαίνει σε φυσική γλώσσα και ακριβώς πότε θα εκτελεστεί. Τίποτα από όσα πληκτρολογείτε δεν φεύγει ποτέ από το πρόγραμμα περιήγησής σας.

Πώς διαβάζει αυτό το εργαλείο μια έκφραση cron

Μια έκφραση cron αποτελείται από πέντε πεδία χωρισμένα με κενά — λεπτό ώρα ημέρα-μήνα μήνας ημέρα-εβδομάδας — κάθε ένα περιγράφει ποιες τιμές αυτής της μονάδας κάνουν μια εργασία να εκτελεστεί. Αυτό το εργαλείο μετατρέπει κάθε πεδίο σε ένα σύνολο έγκυρων αριθμών (ένα * γίνεται κάθε τιμή στο εύρος εκείνου του πεδίου, ένα εύρος όπως 1-5 γίνεται κάθε ενδιάμεσος αριθμός, μια λίστα όπως 1,15,30 γίνεται ακριβώς αυτές τις τιμές, και ένα βήμα όπως */15 γίνεται κάθε 15η τιμή ξεκινώντας από το ελάχιστο του πεδίου), και μετά ελέγχει υποψήφια λεπτά ένα προς ένα έναντι των πέντε συνόλων για να βρει αντιστοιχίες.

Παράδειγμα

Το 0 9 * * 1-5 σημαίνει λεπτό 0, ώρα 9, οποιαδήποτε ημέρα του μήνα, οποιοδήποτε μήνα, ημέρα εβδομάδας από 1 έως 5 — Δευτέρα έως Παρασκευή στην αρίθμηση του cron, όπου το 1 είναι Δευτέρα. Σε φυσική γλώσσα: «Στις 09:00, Δευτέρα έως Παρασκευή.» Ξεκινώντας από την Πέμπτη 13/08/2026, οι επόμενες 5 εκτελέσεις σε UTC είναι:

2026-08-14 09:00 UTC (Παρ)
2026-08-17 09:00 UTC (Δευ)
2026-08-18 09:00 UTC (Τρι)
2026-08-19 09:00 UTC (Τετ)
2026-08-20 09:00 UTC (Πεμ)

Προσέξτε ότι το Σάββατο 15 και η Κυριακή 16 παραλείπονται εντελώς, και ότι μετά την Παρασκευή 14 η επόμενη εκτέλεση πηδάει κατευθείαν στη Δευτέρα 17 — ακριβώς αυτό που πρέπει να κάνει η «ημέρα εβδομάδας 1-5». Και το */15 * * * * (η προεπιλογή παραπάνω) ενεργοποιείται κάθε 15 λεπτά του ρολογιού — στο :00, :15, :30 και :45 κάθε ώρας, ποτέ σε ασυνήθιστα σημεία όπως :07 ή :52.

Συχνές ερωτήσεις

Τι σημαίνουν τα πέντε πεδία;

Με τη σειρά: λεπτό (0–59), ώρα (0–23, 24ωρη μορφή), ημέρα του μήνα (1–31), μήνας (1–12) και ημέρα της εβδομάδας (0–6, όπου το 0 είναι Κυριακή — το 7 γίνεται επίσης δεκτό ως Κυριακή, όπως στις περισσότερες πραγματικές υλοποιήσεις cron). Κάθε πεδίο δέχεται *, που σημαίνει "κάθε έγκυρη τιμή"· έναν μεμονωμένο αριθμό· ένα εύρος όπως 1-5· μια λίστα με κόμμα όπως 1,15,30· και ένα βήμα όπως */15 (κάθε 15 μονάδες, ξεκινώντας από το ελάχιστο του πεδίου) ή 1-31/2 (κάθε 2 τιμές μέσα σε αυτό το εύρος).

Πώς υπολογίζονται οι επόμενες εκτελέσεις;

Με ωμή βία (brute force): ξεκινώντας από το επόμενο ακριβές λεπτό, αυτό το εργαλείο ελέγχει την έκφρασή σας λεπτό προς λεπτό, ένα-ένα, μέχρι να βρει 5 αντιστοιχίες. Είναι σκόπιμα απλοϊκό — δεν πηδάει στο "επόμενο πιθανό λεπτό" — γιατί ένας απλός βρόχος που ελέγχει κάθε λεπτό είναι εύκολο να επαληθευτεί και να τον εμπιστευτείτε. Για να μην τρέχει αυτός ο βρόχος επ' άπειρον σε μια έκφραση που δεν μπορεί ποτέ να ταιριάξει (όπως μια 30ή Φεβρουαρίου), η σάρωση έχει όριο 2.000.000 λεπτών, λίγο κάτω από 4 χρόνια — πέρα από αυτό το σημείο θα δείτε ένα ειλικρινές "δεν βρέθηκε αντιστοιχία στα επόμενα ~4 χρόνια" αντί για ατέρμονη φόρτωση.

Τι συμβαίνει όταν περιορίζω ταυτόχρονα την ημέρα του μήνα και την ημέρα της εβδομάδας;

Εδώ είναι το σημείο όπου αυτό το εργαλείο απλοποιεί σκόπιμα την πραγματική συμπεριφορά του cron, και αξίζει να ειπωθεί καθαρά: αυτό το εργαλείο απαιτεί να ταιριάζουν ΚΑΙ ΤΑ ΠΕΝΤΕ ΠΕΔΙΑ (λογική ΚΑΙ) για κάθε υποψήφιο λεπτό. Οι πραγματικές υλοποιήσεις crontab (Vixie cron και οι περισσότεροι απόγονοί του) αλλάζουν σε λογική Ή συγκεκριμένα ανάμεσα στην ημέρα του μήνα και την ημέρα της εβδομάδας όταν ΚΑΙ ΤΑ ΔΥΟ είναι περιορισμένα από το "*" — άρα το 0 0 15 * 1 στο πραγματικό cron σημαίνει "μεσάνυχτα της 15ης, Ή οποιαδήποτε Δευτέρα", όχι "μεσάνυχτα μιας Δευτέρας που τυχαίνει να είναι και 15η". Αυτό το εργαλείο υπολογίζει τη δεύτερη, πιο αυστηρή ερμηνεία σε αυτή τη συγκεκριμένη περίπτωση. Αν περιορίσετε μόνο το ένα από τα δύο πεδία (αφήνοντας το άλλο ως *), οι δύο προσεγγίσεις συμφωνούν, οπότε αυτό έχει σημασία μόνο όταν περιορίζετε σκόπιμα και τα δύο.

Υποστηρίζει ειδικές συμβολοσειρές όπως @daily, ή πεδίο δευτερολέπτων;

Όχι — αυτό το εργαλείο αναλύει μόνο την τυπική μορφή 5 πεδίων (λεπτό ώρα ημέρα μήνας ημέρα-εβδομάδας), αυτή που τεκμηριώνει το POSIX cron και υποστηρίζεται παντού. Δεν επεκτείνει συντομεύσεις όπως @daily, @hourly ή @reboot, και δεν υποστηρίζει την παραλλαγή 6 πεδίων με ακρίβεια δευτερολέπτου που χρησιμοποιούν κάποιοι νεότεροι scheduler (όπως το Quartz). Αν ο δικός σας scheduler δέχεται μία από αυτές τις μορφές, μετατρέψτε την πρώτα στην απλή μορφή 5 πεδίων — το @daily αντιστοιχεί στο 0 0 * * *, για παράδειγμα.

Σε ποια ζώνη ώρας εμφανίζονται οι επόμενες εκτελέσεις;

Σε όποια επιλέξετε από το αναπτυσσόμενο μενού πάνω από τα αποτελέσματα — η προεπιλογή σε αυτή τη σελίδα είναι Europe/Athens. Αλλάξτε την για να δείτε τις ίδιες εκτελέσεις όπως θα έπεφταν σε άλλη ζώνη ώρας· τα λεπτά που ελέγχονται εσωτερικά δεν αλλάζουν, αλλάζει μόνο το πώς εμφανίζονται και με ποια τοπική ώρα συγκρίνονται.

Στέλνεται η έκφραση cron κάπου;

Όχι. Η ανάλυση και κάθε υπολογισμός επόμενων εκτελέσεων γίνονται εξ ολοκλήρου στο πρόγραμμα περιήγησής σας με απλή JavaScript — τίποτα από όσα πληκτρολογείτε δεν στέλνεται, δεν αποθηκεύεται και δεν καταγράφεται σε διακομιστή. Ισχύει για κάθε εργαλείο αυτού του ιστότοπου.