IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Linux Discussion :

Programmation crontab avec script shell


Sujet :

Linux

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 93
    Points : 46
    Points
    46
    Par défaut Programmation crontab avec script shell
    Bonjour à tous !

    Voilà, j'ai un problème :
    j'aimerais pouvoir placer l'exécution d'un script shell via une crontab, pour qu'il s'exécute régulièrement (d'où la crontab )

    J'aimerais que l'heure et les minutes soient configurables, donc j'ai développé un script qui crée un fichier crontab, dont voici le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    #!/bin/sh
     
    echo $2 $1 '*' '*' '*'  /home/mbe/MBEtests/testCron.sh '>' /home/mbe/MBEtests/logdeux.txt > /var/spool/cron/mbe

    Problème : ca ne marche pas...

    Plus précisément : il me crée bien un fichier dans /var/spool/cron/, mais rien ne se passe au moment où il doit se lancer...

    J'ai regardé au niveau des droits, ou quoi que ce soit, tout est fait comme si j'étais passé par crontab -e.

    So HELP !!


    PS : je suis en redHat.

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 93
    Points : 46
    Points
    46
    Par défaut
    euh je viens de voir que si l'on ne passe pas par crontab -e, ca ne marche pas.

    1- c'est vrai ?
    2- Quelqu'un a une idée pour faire ce que je veux faire, ou c'est impossible ?

    Merci d'avance...

  3. #3
    Expert éminent sénior Avatar de frp31
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2006
    Messages
    5 196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juillet 2006
    Messages : 5 196
    Points : 12 262
    Points
    12 262
    Par défaut
    oui seul la commande crontab -e permet de faire une modification dans la crontab.

    c'est la seule methode garantie et officielle.

    modifier les fichier de cron par d'autres moyens est aleatoire et dangereux ....

    sur certains systemes il existe une option qui permet d'entrer un fichier complet pour remplacer le crontab
    il s'agit de modifier un fichier texte et de dire a crontab par une option de charger le contenu du fichier comme des commandes cron suplementaires mais ca n'existe pas sur tous les systemes !




    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    linx:~ # cat > toto.xtx
    0 16 * * * /usr/sbin/ntpdate ntp.univ-lyon1.fr 1>> /var/log/ntpdate.log
    linx:~ # crontab toto.xtx
    linx:~ # crontab -l
    # DO NOT EDIT THIS FILE - edit the master and reinstall.
    # (toto.xtx installed on Tue Dec  5 14:16:34 2006)
    # (Cron version V5.0 -- $Id: crontab.c,v 1.12 2004/01/23 18:56:42 vixie Exp $)
    0 16 * * * /usr/sbin/ntpdate ntp.univ-lyon1.fr 1>> /var/log/ntpdate.log
    sur ce systeme la ca marche

    si ton systeme l'accepte fais ton script en modifiant ce fichier et lances ensuite une installation de crontab avec ce fichier...
    et ca resoud ton probleme.

  4. #4
    Membre éprouvé
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    792
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 792
    Points : 1 206
    Points
    1 206
    Par défaut
    Selon la version de cron et de la disto, cron va regarder dans /etc/cron.d

    S'il y trouve des fichiers contenant une commande cron, il la rajoutera dans sa planification de tâches. Plus besoin d'exécuter crontab.

    Plus de détails dans man cron.

Discussions similaires

  1. Concaténer des fichiers txt avec script shell Unix
    Par tsivery dans le forum Shell et commandes POSIX
    Réponses: 1
    Dernier message: 12/01/2011, 14h39
  2. traitement tableur avec script shell
    Par adilsoft dans le forum Shell et commandes GNU
    Réponses: 2
    Dernier message: 20/12/2009, 18h44
  3. Renomage de fichier avec script shell
    Par matotrom dans le forum Linux
    Réponses: 4
    Dernier message: 07/08/2008, 09h46
  4. Script Shell qui lance un programme sur un ordi distant avec SSH
    Par bilibou dans le forum Shell et commandes GNU
    Réponses: 5
    Dernier message: 02/06/2007, 11h18
  5. programme C++ avec shell
    Par I_believe_I_can_fly dans le forum C++
    Réponses: 11
    Dernier message: 24/10/2005, 17h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo