Προγραμματισμένες εργασίες με cron jobs

...το μέρος για να ξεκινήσετε!

Συντονιστής: adem1

Κανόνες Δ. Συζήτησης
Παρακαλώ να επιλέξετε, με προσοχή, την άδεια που θέλετε να έχουν οι οδηγοί που συγγράφετε.
Πληροφορίες για τις άδειες μπορείτε να βρείτε εδώ.
Άμα επιθυμείτε κάποια άλλη άδεια επικοινωνήστε με κάποιο Διαχειριστή είτε Συντονιστή.

Σημαντικό είναι να χρησιμοποιήσετε την υπηρεσία http://imagebin.ubuntu-gr.org για τις εικόνες.

Re: Προγραμματισμένες εργασίες με cron jobs

Δημοσίευσηαπό elefher » 10 Δεκ 2009, 17:35

θελω σε μια συγκεκριμενη στιγμη να ανοιγει τον firefox.στη συγκεκριμενη περιπτωση 1:55.
⇛ Linux: Αρχάριος ┃ Προγραμματισμός:C/C++ ┃ Αγγλικά: χάλια
⇛ ubuntu 10.10 LTS 32-bit
⇛ Intel(R) core(TM)2 Duo CPU E4600@2.4GHz ┃ RAM:2GB DDR2 ┃ ATI SAPPHIRE HD 2400 PRO 250MB
⇛ Netbook ACER ASPIRE ONE D250 με ubuntu 10.10 LTS 32-bit
⇛ Turbo-X με ubuntu 12.04 LTS 32-bit Intel® Core™2 Duo CPU T8100 @ 2.10GHz × 2 VESA: M74
Άβαταρ μέλους
elefher
seniorTUX
seniorTUX
 
Δημοσιεύσεις: 566
Εγγραφή: 03 Μάιος 2009, 03:15
Εκτύπωση

Re: Προγραμματισμένες εργασίες με cron jobs

Δημοσίευσηαπό sudobash » 10 Δεκ 2009, 17:48

elefher έγραψε:θελω σε μια συγκεκριμενη στιγμη να ανοιγει τον firefox.στη συγκεκριμενη περιπτωση 1:55.

Δεν πρέπει να το γράψεις σε κάποιο αρχείο, θα γράψεις
Κώδικας: Επιλογή όλων
crontab -e

και εκεί που θα σου ανοίξει, θα γράψεις το
Κώδικας: Επιλογή όλων
55 1 * * * firefox

και θα το αποθηκεύσεις.
Ubuntu 9.10 32bit | 2 x Intel Core 2 Duo T5500 @ 1.66GHz | 2GB DDR2 RAM | Intel 950 Graphics
Richard Stallman wrote the compiler God used. The Big Bang was the Universe's first segfault.
Άβαταρ μέλους
sudobash
daemonTUX
daemonTUX
 
Δημοσιεύσεις: 876
Εγγραφή: 13 Μάιος 2008, 20:11
Τοποθεσία: Κρήτη
Εκτύπωση

Re: Προγραμματισμένες εργασίες με cron jobs

Δημοσίευσηαπό sv9cag » 10 Δεκ 2009, 19:50

Αν θέλω να μου υπενθυμίζει κάτι, (πχ. κάθε 15 του μήνα να πληρώσω τους λογαριασμούς), αλλά αυτό το μήνυμα πρέπει να το βλέπω δηλαδή να τρέχει κάποιο πρόγραμμα ή τερματικό που θα βγαίνει στην οθόνη και θα μου τραβάει την προσοχή και εκεί θα γράφει "πλήρωσε τους λογαριασμούς" πως μπορεί να γίνει;
Γνώσεις ⇛ Linux: μέτρια ┃ Προγραμματισμός: Όχι ┃ Αγγλικά: Μέτρια
Λειτουργικό σε Η/Υ ϰ μοντέλο: Ubuntu 12.10 64bit σε NB MIRAGE DC-G 7200
Προδιαγραφές ⇛ intel core 2cpu T7200 @2Ghz│2048Mb │GeForge Go 7400│intel PRO 3945ABG │HDA intel │1280x800
sv9cag
punkTUX
punkTUX
 
Δημοσιεύσεις: 186
Εγγραφή: 03 Ιουν 2008, 10:11
Εκτύπωση

Re: Προγραμματισμένες εργασίες με cron jobs

Δημοσίευσηαπό sudobash » 10 Δεκ 2009, 23:43

sv9cag έγραψε:Αν θέλω να μου υπενθυμίζει κάτι, (πχ. κάθε 15 του μήνα να πληρώσω τους λογαριασμούς), αλλά αυτό το μήνυμα πρέπει να το βλέπω δηλαδή να τρέχει κάποιο πρόγραμμα ή τερματικό που θα βγαίνει στην οθόνη και θα μου τραβάει την προσοχή και εκεί θα γράφει "πλήρωσε τους λογαριασμούς" πως μπορεί να γίνει;

Μπορείς να χρησιμοποιήσεις το libnotify. Το κάνεις εγκατάσταση με:
Κώδικας: Επιλογή όλων
sudo apt-get install libnotify-bin


και μετά βάζεις στο cron να εκτελεστεί κάτι σαν:
Κώδικας: Επιλογή όλων
notify-send -t 10000 -i info "mpla mpla mpla"


(με το -t βάζεις όσο χρόνο θέλεις σε milliseconds - εδώ πχ. διαρκεί 10 δευτερόλεπτα)
Ubuntu 9.10 32bit | 2 x Intel Core 2 Duo T5500 @ 1.66GHz | 2GB DDR2 RAM | Intel 950 Graphics
Richard Stallman wrote the compiler God used. The Big Bang was the Universe's first segfault.
Άβαταρ μέλους
sudobash
daemonTUX
daemonTUX
 
Δημοσιεύσεις: 876
Εγγραφή: 13 Μάιος 2008, 20:11
Τοποθεσία: Κρήτη
Εκτύπωση

Re: Προγραμματισμένες εργασίες με cron jobs

Δημοσίευσηαπό elefher » 11 Δεκ 2009, 00:11

φιλε sudobash εαν καταλαβα σωστα εννοεις να ανοιξω το τερματικω και να δοσω crontab -e μετα μου ανοιγει το nano και εκει μεσα γραφω :
Κώδικας: Επιλογή όλων
# m h  dom mon dow   command
5 23 * * * firefox

μετα πατω ^ο για να αποθυκευτει χωρις να αλλαξω την ονομασια .το αφηνω να παει η ωρα 23:5 και δεν γινεται τιποτα. οταν παταω στο τερματικο crontab -l μου βγαζει
Κώδικας: Επιλογή όλων
crontab -l
# m h  dom mon dow   command
5 23 * * * firefox

αρα το βλεπει οτι υπαρχει προγραμματισμενη εργασια.μηπος κανω κατι λαθος στο κωδικα?
⇛ Linux: Αρχάριος ┃ Προγραμματισμός:C/C++ ┃ Αγγλικά: χάλια
⇛ ubuntu 10.10 LTS 32-bit
⇛ Intel(R) core(TM)2 Duo CPU E4600@2.4GHz ┃ RAM:2GB DDR2 ┃ ATI SAPPHIRE HD 2400 PRO 250MB
⇛ Netbook ACER ASPIRE ONE D250 με ubuntu 10.10 LTS 32-bit
⇛ Turbo-X με ubuntu 12.04 LTS 32-bit Intel® Core™2 Duo CPU T8100 @ 2.10GHz × 2 VESA: M74
Άβαταρ μέλους
elefher
seniorTUX
seniorTUX
 
Δημοσιεύσεις: 566
Εγγραφή: 03 Μάιος 2009, 03:15
Εκτύπωση

Re: Προγραμματισμένες εργασίες με cron jobs

Δημοσίευσηαπό ftso » 11 Δεκ 2009, 00:17

φτιάξε ένα script:
Κώδικας: Επιλογή όλων
#!/bin/bash
export DISPLAY=:0
/usr/bin/firefox

αποθήκευσε το με ότι όνομα θέλεις και βάλτο στον cron αφού το κάνεις εκτελέσιμο...
Άβαταρ μέλους
ftso
Επίτιμο μέλος
Επίτιμο μέλος
 
Δημοσιεύσεις: 6409
Εγγραφή: 12 Μάιος 2008, 13:40
Τοποθεσία: Αθήνα
IRC: ftso
Εκτύπωση

Re: Προγραμματισμένες εργασίες με cron jobs

Δημοσίευσηαπό elefher » 11 Δεκ 2009, 02:53

ftso εγραψα το script στο gedit το αποθυκευσα σαν firefox και με την εντολη chmod +x firefox το εκανα εκτελεσιμο.μεχρι εδω εχω κανει κατι λαθος?στη συνεχεια το εκανα copy/paste στο etc/cron.d.αλλα παλι δεν κανει τιποτα .μαλον εδω εχω κανει το λαθος μπενει σε αλλο φακελο?
κατι ακομα πως μπορω να τα μαθω αυτα τις εντολες κυριος οπως εγραψες ποιο πανω
Κώδικας: Επιλογή όλων
#!/bin/bash
export DISPLAY=:0
/usr/bin/firefox

για να μην σας κουραζω κοιολας,αλλα για να το προχωρισω και λιγο παραπανω να κανει και αλλες εργασιες.
⇛ Linux: Αρχάριος ┃ Προγραμματισμός:C/C++ ┃ Αγγλικά: χάλια
⇛ ubuntu 10.10 LTS 32-bit
⇛ Intel(R) core(TM)2 Duo CPU E4600@2.4GHz ┃ RAM:2GB DDR2 ┃ ATI SAPPHIRE HD 2400 PRO 250MB
⇛ Netbook ACER ASPIRE ONE D250 με ubuntu 10.10 LTS 32-bit
⇛ Turbo-X με ubuntu 12.04 LTS 32-bit Intel® Core™2 Duo CPU T8100 @ 2.10GHz × 2 VESA: M74
Άβαταρ μέλους
elefher
seniorTUX
seniorTUX
 
Δημοσιεύσεις: 566
Εγγραφή: 03 Μάιος 2009, 03:15
Εκτύπωση

Re: Προγραμματισμένες εργασίες με cron jobs

Δημοσίευσηαπό sudobash » 11 Δεκ 2009, 10:41

elefher έγραψε:ftso εγραψα το script στο gedit το αποθυκευσα σαν firefox και με την εντολη chmod +x firefox το εκανα εκτελεσιμο.μεχρι εδω εχω κανει κατι λαθος?στη συνεχεια το εκανα copy/paste στο etc/cron.d.αλλα παλι δεν κανει τιποτα .μαλον εδω εχω κανει το λαθος μπενει σε αλλο φακελο?
κατι ακομα πως μπορω να τα μαθω αυτα τις εντολες κυριος οπως εγραψες ποιο πανω
Κώδικας: Επιλογή όλων
#!/bin/bash
export DISPLAY=:0
/usr/bin/firefox

για να μην σας κουραζω κοιολας,αλλα για να το προχωρισω και λιγο παραπανω να κανει και αλλες εργασιες.

Ακολούθησε την εξής διαδικασία.
Αποθήκευσε τα
Κώδικας: Επιλογή όλων
#!/bin/bash
export DISPLAY=:0
/usr/bin/firefox

σε ένα αρχείο που θα το ονομάσεις firefox.sh, κάνε το εκτελέσιμο με
Κώδικας: Επιλογή όλων
chmod a+x firefox.sh

και μετέφερε το στο home directory σου
Κώδικας: Επιλογή όλων
mv firefox.sh ~/

Μετά γράψε
Κώδικας: Επιλογή όλων
crontab -e

και βάλε το να εκτελείται όποτε θες, πχ:
Κώδικας: Επιλογή όλων
05 23 * * * /home/to_username_sou/firefox.sh


elefher έγραψε:μπορω να τα μαθω αυτα τις εντολες κυριος οπως εγραψες ποιο πανω

Ρίξε μια ματιά σε αυτά:
Advanced Bash-Scripting Guide
Linux Command Directory
Ubuntu 9.10 32bit | 2 x Intel Core 2 Duo T5500 @ 1.66GHz | 2GB DDR2 RAM | Intel 950 Graphics
Richard Stallman wrote the compiler God used. The Big Bang was the Universe's first segfault.
Άβαταρ μέλους
sudobash
daemonTUX
daemonTUX
 
Δημοσιεύσεις: 876
Εγγραφή: 13 Μάιος 2008, 20:11
Τοποθεσία: Κρήτη
Εκτύπωση

Re: Προγραμματισμένες εργασίες με cron jobs

Δημοσίευσηαπό sv9cag » 11 Δεκ 2009, 10:58

Ευχαριστώ sudobash για την απάντηση.
Οταν τρέξω την εντολή χειροκίνητα από το τερματικό δουλεύει, όταν όμως τρέχει από το cronjob βγάζει το παρακάτω μήνυμα λάθους στο log.
Κώδικας: Επιλογή όλων
From: root@fr-g.lan (Cron Daemon)
To: george@fr-g.lan
Subject: Cron <george@fr-g> notify-send -t 100000 -i info "πληρωμή επιταγών"
Content-Type: text/plain; charset=ANSI_X3.4-1968
X-Cron-Env: <SHELL=/bin/sh>
X-Cron-Env: <HOME=/home/george>
X-Cron-Env: <PATH=/usr/bin:/bin>
X-Cron-Env: <LOGNAME=george>
Message-Id: <E1NJ08X-0000pn-B4@fr-g.lan>
Date: Fri, 11 Dec 2009 09:42:01 +0200

libnotify-Message: Unable to get session bus: /bin/dbus-launch terminated abnormally with the following error: Autolaunch error: X11 initialization failed.

Παραθέτω και το cronjob μήπως κάτι δεν έχω κάνει καλά.
Κώδικας: Επιλογή όλων
george@fr-g:~$ crontab -l
# m h  dom mon dow   command
42 9 11-15 * * notify-send -t 100000 -i info "πληρωμή επιταγών"
10 9 14-15 * * notify-send -t 100000 -i info "πληρωμή επιταγών"
10 8 29-30 * * notify-send -t 100000 -i info "πληρωμή επιταγών"
10 9 29-30 * * notify-send -t 100000 -i info "πληρωμή επιταγών"

george@fr-g:~$

Και μια παρατήρηση ακόμη, δοκίμασα με χρόνο από 1, 10, 100, 1000, 10000 & 100000 σε όλες τις περιπτώσεις το μήνυμα έμεινε ανοιχτό για 10 δευτερόλεπτα.

Ευχαριστώ

Γιώργος - sv9cag
Γνώσεις ⇛ Linux: μέτρια ┃ Προγραμματισμός: Όχι ┃ Αγγλικά: Μέτρια
Λειτουργικό σε Η/Υ ϰ μοντέλο: Ubuntu 12.10 64bit σε NB MIRAGE DC-G 7200
Προδιαγραφές ⇛ intel core 2cpu T7200 @2Ghz│2048Mb │GeForge Go 7400│intel PRO 3945ABG │HDA intel │1280x800
sv9cag
punkTUX
punkTUX
 
Δημοσιεύσεις: 186
Εγγραφή: 03 Ιουν 2008, 10:11
Εκτύπωση

Re: Προγραμματισμένες εργασίες με cron jobs

Δημοσίευσηαπό elefher » 11 Δεκ 2009, 16:31

sudobash εκανα οτι μου ειπες και δουλευει.ευχαριστω πολυ.μια ερωτησει ακομα μεσα στο script μπορω να προσθεσω και ποια σελιδα να μου ανοιγει ο firefox ή πρεπει να τη βαλω ως home page ?
⇛ Linux: Αρχάριος ┃ Προγραμματισμός:C/C++ ┃ Αγγλικά: χάλια
⇛ ubuntu 10.10 LTS 32-bit
⇛ Intel(R) core(TM)2 Duo CPU E4600@2.4GHz ┃ RAM:2GB DDR2 ┃ ATI SAPPHIRE HD 2400 PRO 250MB
⇛ Netbook ACER ASPIRE ONE D250 με ubuntu 10.10 LTS 32-bit
⇛ Turbo-X με ubuntu 12.04 LTS 32-bit Intel® Core™2 Duo CPU T8100 @ 2.10GHz × 2 VESA: M74
Άβαταρ μέλους
elefher
seniorTUX
seniorTUX
 
Δημοσιεύσεις: 566
Εγγραφή: 03 Μάιος 2009, 03:15
Εκτύπωση

ΠροηγούμενηΕπόμενο

Επιστροφή στο Οδηγοί - How to - Tutorials