Bonjour,
je voudrais faire un script shell (un batch), qui s’exécute dans une tache planifiée (cron) mais je ne sais pas comment le faire. Est-il possible de m'aider un peu ?
merci d'avance
Version imprimable
Bonjour,
je voudrais faire un script shell (un batch), qui s’exécute dans une tache planifiée (cron) mais je ne sais pas comment le faire. Est-il possible de m'aider un peu ?
merci d'avance
non pas avec aussi peu d'informations sur ton besoin, il n'est pas possible de t'aider.:roll::aie::mouarf:
Un exemple générique ferait très bien l'affaire. (le contenu d'un fichier batch, le mettre exécutable, rendre contable, et l’exécuter en tant que cron, bref juste un exemple très simple)
ps: j'ai peut être dit des bêtises. (j'ai juste proposé) c'est pour ça que je cherche un exemple simple.
prends un cron quelconque qui execute quelque chose qui n'est pas écrit par toi déjà ....
genre& tu colles ça dans des crontabCode:echo "truc" > /tmp/machin
un exemple de crontabCode:
1
2 * * * * 1-5 echo "toto" >> /tmp/machin
cherches les horaires débiles/inutiles de cet exemple et tu auras compris crontabCode:
1
2
3
4
5
6
7
8 0 20 * * 1-5 /usr/sbin/rdate -ncv ntp.univ-lyon1.fr 30 22 * * * /usr/bin/find /home/ -type f -name "*.core" -exec /usr/bin/rm {} \; 15,45 19,23 * * * /usr/bin/find /home/ -type f -name "nohup.out" -exec /usr/bin/rm {} \; 10 23 1-7 * 0,6 /bin/rm -rf /home/francois/Downloads/* 11 18 * * 0,6 /usr/local/bin/mysqldump -u francois -p"*******" --all-databases -h undertaker > /home/francois/Documents/mysql.dump.$(date +\%Y\%m\%d) 21 18 * * 0,6 /usr/local/bin/mysqldump -u root -p"******" --all-databases -h undertaker > /home/francois/Documents/mysql.full.$(date +\%Y\%m\%d) 30 19 * * 0,6 /usr/bin/gzip /home/francois/Documents/mysql.[fd]u[lm][lp].$(date +\%Y\%m\%d) 45 21 1-6 1,3,5,7,9,11 0 /usr/bin/find /home/francois/Documents/ -type f -name "mysql.*gz" -mtime +365 -exec /usr/bin/rm -f {} \; -print
j'ai tenté de faire ça mais ça marche pas
la commande :
Code:22 12 * * * mysqldump -hlocalhost -uroot -pTBbillel21 reporting-rh | gzip > reporting-rh_bdd_backup_09_08_2011.sql.gz
message : bash: 22: command not found
si quelqu'un peut me diriger ou m'aider
Salut,
Commence déjà par mettre les chemins complets pour les commandes mysqldump,gzip ainsi que le chemin complet de l'endroit où tu souhaites stocker ton fichier tar.gz.
y'a un moment où il va falloir envisager de lire un minimum :lol: tu fais tout connement comme dans les exemples cités au dessus.
pour le restetu verras que c'estCode:man crontab
pour éditer (mode vi)Code:crontab -e
donc tu fais
par exempleCode:0 20 * * 1-5 /chemin/backup_db.sh
:mouarf:
oublies pas que crontab ne charge pas d'environnements et que "%" est un commentaire en crontab donc si tu en utilises il faut remplacer par "\%" afin que ça soit interprété...
bien sur ton script doit fonctionner correctement unitairement avant de l'intégrer en crontab. Mais c'est si évident que je ne sais pas pourquoi je le mentionne.
j'espère que c'est plus clair maintenant
Justement, tu n'aurais pas un Tutoriel simple ? (je n'en ai pas trouvé un qui montre très simplement un exemple avec ce dont j'ai besoin)
si ça c'est pas assez simple je vois pas ce que je peux faire de plus là ...
8O:calim2: