Lancer un script shell avec cron
nina08
-
nina08 Messages postés 8 Statut Membre -
nina08 Messages postés 8 Statut Membre -
Bonjour,
J'ai ecris un script shell, je veux le lancer tous les 5 mn.
Donc j'ai utilisé les cron.
J'ai rajouté cette ligne dans le fichier contrab
48 10 10 8 * essai-cron.bash > /dev/null 2>&1
Mais comment je peux voir le résultat, quand l'heure arrive j'ai aucun changement.
Merci
J'ai ecris un script shell, je veux le lancer tous les 5 mn.
Donc j'ai utilisé les cron.
J'ai rajouté cette ligne dans le fichier contrab
48 10 10 8 * essai-cron.bash > /dev/null 2>&1
Mais comment je peux voir le résultat, quand l'heure arrive j'ai aucun changement.
Merci
A voir également:
- Cron shell
- Classic shell - Télécharger - Personnalisation
- Z-cron - Télécharger - Optimisation
- Secure shell - Télécharger - Divers Web & Internet
- Shell infrastructure host c'est quoi - Guide
- Shell startup windows 10 - Guide
12 réponses
Bonjour,
exemple de crontab pour lancer un script toutes les trois minutes
0-59/3 * * * * date >> /tmp/essai_cron.txt
Tu peux vérifier que ton fichier /tmp/essai_cron.txt evolue bien ...
Aprés tu remplaces "date" par ton script.
Daniel
exemple de crontab pour lancer un script toutes les trois minutes
0-59/3 * * * * date >> /tmp/essai_cron.txt
Tu peux vérifier que ton fichier /tmp/essai_cron.txt evolue bien ...
Aprés tu remplaces "date" par ton script.
Daniel
Merci beaucoup pour la reponses c'est trés gentil.
J'ai un autre problème, mon script lance la commande rsync qui fait la copie des données via le réseau.
donc je dois lui donné les paramètres dans la ligne de commande.
depuis le terminal je lance mon script come ceci:
./script source user@ip: destination
comment je fait pour rajouter ces parametres dans le cron.
Merci
J'ai un autre problème, mon script lance la commande rsync qui fait la copie des données via le réseau.
donc je dois lui donné les paramètres dans la ligne de commande.
depuis le terminal je lance mon script come ceci:
./script source user@ip: destination
comment je fait pour rajouter ces parametres dans le cron.
Merci
Tu peux soit mettre la commande rsync directement dans le cron
Ex: 0-59/3 * * * * rsync -aov --rsh="ssh -l user" /repertoire_source host_dest:/repertoire_dest
ou mettre les parametres dans le script
Ex: 0-59/3 * * * * rsync -aov --rsh="ssh -l user" /repertoire_source host_dest:/repertoire_dest
ou mettre les parametres dans le script
Hello,
Montres moi ton script, car je ne pense pas avoir compris tout à fait le probleme.
...
Montres moi ton script, car je ne pense pas avoir compris tout à fait le probleme.
...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Merci bien pour vos reponses, ça marche bien
Mon probleme maintenant est de lancer le script avec des options cad comme ceci
./script -s source -d user@ip:dest
et si jammais j'oublie un parametre oubien j'ecri mal la commande, ça m'affiche um message d'erreur,du genre je rajoute à mon script
usage ()
{
echo "Usage: $0 -s source -d dest" >&2
}
if [ $# -eq 0 ]; then
usage
fi
Svp, comment je peux faire ceci,depuis le terminal ça m'affiche bien mais avec cron je voie pas comment le faire ?
Merci
Mon probleme maintenant est de lancer le script avec des options cad comme ceci
./script -s source -d user@ip:dest
et si jammais j'oublie un parametre oubien j'ecri mal la commande, ça m'affiche um message d'erreur,du genre je rajoute à mon script
usage ()
{
echo "Usage: $0 -s source -d dest" >&2
}
if [ $# -eq 0 ]; then
usage
fi
Svp, comment je peux faire ceci,depuis le terminal ça m'affiche bien mais avec cron je voie pas comment le faire ?
Merci
avec cette redirection >> /chemin/log 2&1 toutes les éventuelles erreurs sont dans log. Il faut tjrs vérifier un backup.
Hello,
pourquoi faire simple quand on peut faire compliqué :
Voici un exemple de traitement des arguments d'un script
#!/bin/bash
while getopts "s:d:" flag
do
case $flag in
s)
SOURCE=$OPTARG
;;
d)
DEST=$OPTARG
;;
*)
exit
;;
esac
done
echo "rsync -ao $SOURCE $DEST"
A+
pourquoi faire simple quand on peut faire compliqué :
Voici un exemple de traitement des arguments d'un script
#!/bin/bash
while getopts "s:d:" flag
do
case $flag in
s)
SOURCE=$OPTARG
;;
d)
DEST=$OPTARG
;;
*)
exit
;;
esac
done
echo "rsync -ao $SOURCE $DEST"
A+
Euh... juste un truc qui me chiffonne, si tu lances ton script depuis la crontab, normalement les paramètres y sont déjà, je ne vois pas d'où pourrait surgir une éventuelle omission de paramètres, non ? ;-\