Πώς να δημιουργήσετε και να προσθέσετε εργασίες Cron στο Linux

Προγραμματισμός περιοδικών εργασιών χρησιμοποιώντας το Cron στο Linux

cron είναι ένα πρόγραμμα Linux που χρησιμοποιείται για να προγραμματίσει μια εντολή ή ένα σενάριο που θα εκτελεστεί σε μεταγενέστερο χρονικό σημείο. Μπορεί επίσης να χρησιμοποιηθεί για τον προγραμματισμό εντολών και σεναρίων που εκτελούνται περιοδικά. Τα προγράμματα που προγραμματίζονται με χρήση του cron αναφέρονται συνήθως ως Cron Jobs. Η κύρια χρήση του είναι για εργασίες διαχείρισης συστήματος, όπως τακτικά αντίγραφα ασφαλείας, τακτικές ενημερώσεις λογισμικού και άλλες παρόμοιες εργασίες συντήρησης.

Εισαγωγή

cron εκτελείται ως δαίμονας στο Linux, δηλαδή ως διαδικασία παρασκηνίου. Επιτρέπει στους χρήστες να προγραμματίζουν εργασίες απευθείας με την εντολή crontab, η οποία ανοίγει ένα αρχείο διαμόρφωσης που ονομάζεται Cron File σε ένα πρόγραμμα επεξεργασίας. Δημιουργούνται ξεχωριστά αρχεία Cron για κάθε χρήστη.

Δημιουργία αρχείου Cron και βασικής σύνταξης

ο crontab η εντολή μπορεί να εκτελεστεί με -μι επισημάνετε για να επεξεργαστείτε ένα υπάρχον αρχείο Cron. Εάν το αρχείο δεν υπάρχει ήδη, θα δημιουργηθεί. Εάν ο χρήστης καλεί την εντολή για πρώτη φορά και εάν υπάρχουν εγκατεστημένοι πολλαπλοί επεξεργαστές αρχείων στο σύστημα Linux, η εντολή θα ζητήσει από τον χρήστη να επιλέξει έναν προεπιλεγμένο επεξεργαστή από μια λίστα επεξεργαστών.

Αφού επιλέξετε τον επεξεργαστή, θα δημιουργηθεί και θα ανοίξει ένα αρχείο cron για τον χρήστη. Τώρα μπορείτε να καθορίσετε εργασίες στο αρχείο.

Η γενική σύνταξη για τον καθορισμό μιας Cron Job είναι:

Βασικά, το θα τρέχει στο καθορισμένο 'λεπτό' (0-59), 'ώρα' (0-23), 'ημέρα του μήνα'(1-31), μήνα (1-12), ημέρα της εβδομάδας, (0-7, Για την Κυριακή, μπορεί να χρησιμοποιηθεί είτε 0 είτε 7) στο Cron Job. Για απλοποίηση, ας πάρουμε ένα παράδειγμα:

1 2 3 4 5 ηχώ "Γεια σου"

Αυτό σημαίνει την εντολή ηχώ "Γεια σου" θα τρέχει κάθε πέμπτη ημέρα της εβδομάδας (Παρασκευή) και κάθε 3η ημέρα του μήνα, κάθε 4ο μήνα του έτους (Απρίλιος), ώρα 02:01 (2η ώρα πρώτο λεπτό).

Εάν η ίδια εντολή εκτελείται καθημερινά στις 02:01, η σύνταξη θα μοιάζει με:

1 2 * * * ηχώ "Γεια σου"

ο * σημαίνει «πάντα» ή «για όλους», π.χ. για όλους τους μήνες, για όλες τις ημέρες της εβδομάδας κ.λπ.

Ο χειριστής εντολών (,) μπορεί να χρησιμοποιηθεί για την εισαγωγή μιας λίστας τιμών όταν η εργασία πρέπει να επαναληφθεί. Για παράδειγμα:

0 2,3,4 * * * echo "Hello"

Αυτό θα τρέχει το πρόγραμμα στις 2 π.μ., 3 π.μ. και 4 π.μ., κάθε μέρα.

Ομοίως, μια παύλα (-) χειριστής μπορεί να χρησιμοποιηθεί για να καθορίσει ένα εύρος για το οποίο η εργασία θα επαναληφθεί. Για παράδειγμα:

0-20 2 * * * ηχώ "Γεια σου"

Αυτό θα τρέξει το πρόγραμμα στις 02:00, 02:01, 02:02 και ούτω καθεξής έως τις 02:20.

Τέλος, έχουμε η κάθετο ( / ) χειριστής. Αυτός ο τελεστής χρησιμοποιείται για να καθορίσει μια τιμή διαστήματος σύμφωνα με την οποία η εργασία θα επαναληφθεί. Π.χ. */15 στο πεδίο λεπτών σημαίνει ότι η εργασία πρέπει να επαναλαμβάνεται κάθε 15 λεπτά. 2-10/2 στο πεδίο ώρες ορίζει ότι η εργασία θα επαναλαμβάνεται μεταξύ 2 π.μ. και 10 π.μ. μετά από κάθε μεσοδιάστημα 2 ωρών (2 π.μ., 4 π.μ., 6 π.μ., 8 π.μ., 10 π.μ.).

*/15 2-10/2 * * * echo "Hello"

Αφού κάνετε την καταχώριση στο αρχείο Cron, αποθηκεύστε το αρχείο και βγείτε από το πρόγραμμα επεξεργασίας.

Θα πρέπει να δείτε α "εγκατάσταση νέου crontab" μήνυμα στο τερματικό μετά την αποθήκευση και την έξοδο από το αρχείο crontab.

Μακροεντολές

Ορισμένες μακροεντολές είναι προκαθορισμένες στο Cron, οι οποίες καθορίζουν ορισμένα συνήθως απαιτούμενα χρονικά διαστήματα, όπως κάθε ώρα, κάθε μέρα, κάθε μήνα κ.λπ.

Για να εκτελέσετε μια εργασία μία φορά την ημέρα στην αρχή της ημέρας, π.χ. στις 00:00, χρησιμοποιήστε τη μακροεντολή @καθημερινά. Αυτό ισοδυναμεί με 0 0 * * *.

Μπορείτε να το βάλετε στο αρχείο Cron με τον ίδιο τρόπο που περιγράφηκε προηγουμένως.

Με παρόμοιο τρόπο, μπορούν να χρησιμοποιηθούν και οι άλλες μακροεντολές, π.χ. @ωριαίος (Λεπτό 0 κάθε ώρας), @Μηνιαίο (00:00 της πρώτης ημέρας του μήνα), @εβδομαδιαίος (00:00 της πρώτης ημέρας της εβδομάδας, @ετήσια(00:00 πρώτη Ιανουαρίου κάθε έτους), @reboot (σε κάθε εκκίνηση του υπολογιστή).

συμπέρασμα

Σε αυτό το άρθρο, μάθαμε πώς να προσθέτουμε το Cron Jobs για κανονική εκτέλεση στο Linux. Η σωστή χρήση του Cron Jobs είναι χρήσιμη ακόμη και για τις πιο ενοχλητικές χειροκίνητες εργασίες που αντιμετωπίζει ο χρήστης, π.χ. τακτική διαγραφή παλαιών αρχείων καταγραφής, αρχειοθέτηση όλων των ειδών ψυχρών δεδομένων (δεδομένα στα οποία γίνεται σπάνια πρόσβαση) κ.λπ.

Κατηγορία: Linux