Πώς μπορούμε να προγραμματίσουμε αυτόματες εργασίες στο Unix
Τελευταίες δημοσιεύσεις από Stratos Matzouranis (Προβολή όλων)
- Πώς ενεργοποιούμε το Unified Auditing σε Oracle Database - 7 Οκτώβριος 2024
- Τι είναι η PostgreSQL και πως κάνουμε μία πλήρης εγκατάσταση - 2 Σεπτέμβριος 2024
- Πώς ρυθμίζουμε το replication του GoldenGate ώστε να διαβάζει από το Standby του Oracle Data Guard - 2 Αύγουστος 2024
Στα λειτουργικά συστήματα βασισμένα σε Unix όπως Linux και MacOS έχουμε εγκαταστημένο το πρόγραμμα Cron.
To Cron μας δίνει την δυνατότητα να μπορούμε να προγραμματίσουμε εργασίες να εκτελούνται αυτόματα μέσα στο χρόνο.
Η χρησιμότητα του ξεχωρίζει σε εργασίες που επαναλαμβάνονται.
Το συντακτικό
Για να δούμε τη λίστα με όσους προγραμματισμούς έχουμε ήδη στο cron
crontab –l
Για να προσθέσουμε νέους προγραμματισμούς ή να αλλάξουμε ήδη υπάρχων
crontab –e
Η κάθε εγράφη αποτελεί έναν ξεχωριστό προγραμματισμό.
Ο τρόπος που συντάσσεται
# ┌───────────── λεπτό (0 - 59)
# │ ┌───────────── ώρα (0 - 23)
# │ │ ┌───────────── μέρα (1 - 31)
# │ │ │ ┌───────────── μήνας (1 - 12)
# │ │ │ │ ┌───────────── ημέρα της εβδομάδας (0 - 6) (0 είναι η Κυριακή)
# │ │ │ │ │
# │ │ │ │ │
# │ │ │ │ │
# * * * * * <η εντολή που θα εκτελεστεί>
Η σειρά στα αστεράκια είναι λεπτά 0-59, ώρες 0-23, μέρα 1-31, μήνας 1-12, μέρα της βδομάδα 0-6 με το 0 να είναι η Κυριακή για αρχή. Ωστόσο μπορούμε να επιλέξουμε κάποιες μέρες βάζοντας ‘ , ‘ ανάμεσα στις μέρες.
Παραδείγματα
Για να εκτελέσουμε το αρχείο test.sh
Ανά 5 λεπτά
*/5 * * * * /home/user/test.sh
Ανά μία ώρα
0 * * * * /home/user/test.sh
Στις 10 το πρωί
0 10 * * * /home/user/test.sh
Κάθε Δευτέρα στις 10:15 το πρωί
15 10 * * 1 /home/user/test.sh
Κάθε πρώτη και 15 του μήνα στις 8 το πρωί
0 8 1,15 * * /home/user/test.sh
Για να δούμε το log
tail -f /var/spool/mail/onoma_xristi