Aller au contenu

crontab


Messages recommandés

Salut à tous, j'ai un petit probleme dans la commande crontab en association avec un script shell, ca ne marche pas chez moi, bon voila ce que j'ai fais:

1- edition de mon crontab : crontab -u root -e

SHELL=/bin/sh

PATH=/usr/bin:/usr/sbin:/sbin:/bin:/usr/lib/news/bin:/home/viper/bin

*/1 6 3 4 1 /home/viper/test.sh

<escp>:wq!

2- chmod +x test.sh

3- echo "hellOOOO" >> test;

d'abord j'ai placé test.sh sous /home/viper, mais ca n'a pas marché, sous /home/viper/bin non plus

MERCI MERCI MERCI de bien vouloir m'aider

Lien vers le commentaire
Partager sur d’autres sites

Euh, si ton fichier test.sh ne contient que "hellOOOO", ça risque pas de marcher effectivement... Un script contient des commandes shell.

Et "HellOOOO" n'en est pas une :chinois:

edit: en plus ta commande "echo "hellOOOO" >> test;" écrit dans un fichier test, qui est différent de test.sh

Lien vers le commentaire
Partager sur d’autres sites

tu as voulu faire quoi avec "*/1 6 3 4 1" ?

*/1 déjà à mon avis il doit pas aimer, */2 c'est une minute sur 2 */1 = ?

donc admettons que ça marche :

à 6h, 6h 01, 6h 02 ...

le 3 avril ( 3 4 )

qui tombe un lundi ? muumf

si c'est pour lancer une commande ponctuellement va plutot du côté de "at"

Lien vers le commentaire
Partager sur d’autres sites

Avant même d'ajouter ton script dans une tâche CRON, assures-toi que ce script fonctionne bien !

Attention avec le mot "test" tout court, il existe une commande avec Linux qui s'appelle "test" ou les [ ] qui fait la même chose.

Lance ton script "test.sh" directement en ligne de commande comme ci: ./test.sh et regarde si ça marche ! Si c'est ok, ensuite ajoute le dans CRONTAB et ça devrait parfaitement fonctionner (NOTE: Sans ajouter PATH, tu peux copier ton script dans le dossier /bin pour qu'il devienne exécutable).

Et comme Sandeman dit, assures-toi que */1 fonctionne !

Lien vers le commentaire
Partager sur d’autres sites

Merci pour vos reponses:

1-

Euh, si ton fichier test.sh ne contient que "hellOOOO", ça risque pas de marcher effectivement... Un script contient des commandes shell.

Et "HellOOOO" n'en est pas une

edit: en plus ta commande "echo "hellOOOO" >> test;" écrit dans un fichier test, qui est différent de test.sh

c'est celle là qui a tourné chez moi contrairement a tout ce qui est *.sh

2-

Maintenant et compte tenu que mes *.sh marchent sur crontab, je cherche s'il y'a moyen de jouer sur les parametres de declenchement de la crontab càd qu'à partir d'une interface graphique on peut determiner la date de declenchement de certaines commandes, vu que la crontab n'est pas un fichier donc je pense pas que ca pouvait ce faire, SVP eclairez moi, j'en ai vraiement besoin.

et MERCI encore d'avance.

Lien vers le commentaire
Partager sur d’autres sites

  • 2 semaines après...

Tout est une fichier sous Linux !

crontab enregistre les données dans /var/spool/cron/"user", mais il faut toujours utiliser crontab -e pour bien fonctionner !

Pour ce qui est de l'interface graphique, si tu parles d'être en X (Gnom ou KDE) rien ne t'empêche d'ouvrir un terminal pour exécuter crontab.

D'un autre côté, il est tout à fait possible de contrôler de façon graphique crontab, soit en trouvant une application tout déjà fait ou en te fabricant une application en Perl, TCL/Tk, Gtk, ... mais là faut être programmeur :transpi:

Je te donne comme exemple, l'interface graphique Webmin, elle permet de changer les tâches sans problème.

PS, si c'est à cause que tu ne comprends pas très bien comment avec crontab -e écrire la commande pour spécifier la date, l'heure, clause, ... pour que tes scripts se lance ont peut t'aider. Quand on a compris, c'est assez simple et c'est très flexible comme possibilité (plus que AT / planificateur de tâches de Windows).

Fait un man crontab !

Lien vers le commentaire
Partager sur d’autres sites

crontab enregistre les données dans /var/spool/cron/"user", mais il faut toujours utiliser crontab -e pour bien fonctionner !

c'est ce qui est écrit dans le man, mais j'ai toujours édité à la main et ça fonctionne pour moi. Qu'est ce que ça peut poser comme problème (vu que si je ne me trompe c'est un simple fichier texte dont les lignes semblent indépendantes) ?

Lien vers le commentaire
Partager sur d’autres sites

crontab enregistre les données dans /var/spool/cron/"user", mais il faut toujours utiliser crontab -e pour bien fonctionner !

c'est ce qui est écrit dans le man, mais j'ai toujours édité à la main et ça fonctionne pour moi. Qu'est ce que ça peut poser comme problème (vu que si je ne me trompe c'est un simple fichier texte dont les lignes semblent indépendantes) ?

Ça je sais pas exactement... mais c'est peut être une question de relation avec d'autres fichiers/droits/etc... ils n'ont surement pas inventé cet éditeur juste pour le fun. Peut-être que le support de crontab pourrait y répondre !

J'avoue avoir déjà édité moi aussi le fichier /var/spool/cron/userenquestion et ça marchait très bien.

Lien vers le commentaire
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...