CRONTAB execute la moitié d'un script shell
julien62190
Messages postés
28
Statut
Membre
-
rivalgro -
rivalgro -
Bonjour,
j'avais posté un message afin d'etre éclairer sur un script trés simpliste qui serait exécuter avec crontab sous linux. Mais ce n'est pas grave le script que j'ai fonctionne mais je m'explique :
#!/bin/sh
killall -9 /usr/lib/mozilla-firefox-1.0.6/mozilla-firefox-bin
mozilla-firefox www.google.fr
Voila mon problème je dois lancer une tâche planifiée sous linux qui ferme la page actuelle de mozilla et en ouvre une nouvelle ( ici j'ai pris l'exemple de google.fr mais ça n'a pas d'importance c'est pour expliquer ) et cela tous les jours a 5h du matin .
je me log donc en root et je tape crontab -e , voila ce que j'y met :
*/1 * * * * /home/user1/Desktop/script.sh
ps : ici j'ai fait en sorte d'éxécuter le script toutes les minutes pour voir si cela fonctionne .
Enfait le script ferme bien la page mozilla mais il n'ouvre pas google.fr juste aprés avoir fermé la précédente .
or si je clique sur mon script.sh il ferme la page mozillia et ouvre la nouvelle .
Donc where is the problem sir ? ^^
Merci d'avance
j'avais posté un message afin d'etre éclairer sur un script trés simpliste qui serait exécuter avec crontab sous linux. Mais ce n'est pas grave le script que j'ai fonctionne mais je m'explique :
#!/bin/sh
killall -9 /usr/lib/mozilla-firefox-1.0.6/mozilla-firefox-bin
mozilla-firefox www.google.fr
Voila mon problème je dois lancer une tâche planifiée sous linux qui ferme la page actuelle de mozilla et en ouvre une nouvelle ( ici j'ai pris l'exemple de google.fr mais ça n'a pas d'importance c'est pour expliquer ) et cela tous les jours a 5h du matin .
je me log donc en root et je tape crontab -e , voila ce que j'y met :
*/1 * * * * /home/user1/Desktop/script.sh
ps : ici j'ai fait en sorte d'éxécuter le script toutes les minutes pour voir si cela fonctionne .
Enfait le script ferme bien la page mozilla mais il n'ouvre pas google.fr juste aprés avoir fermé la précédente .
or si je clique sur mon script.sh il ferme la page mozillia et ouvre la nouvelle .
Donc where is the problem sir ? ^^
Merci d'avance
A voir également:
- CRONTAB execute la moitié d'un script shell
- Moitié a4 - Guide
- Classic shell - Télécharger - Personnalisation
- Script vidéo youtube - Guide
- Ghost script - Télécharger - Polices de caractères
- Mas script - Accueil - Windows
47 réponses
cron tourne avec un environement minimum. Il n'a donc pas la variable DISPLAY définie pour demarrer Mozilla.
Dans le shell, faire echo $DISPLAY et mettre cette valeur dans le script:
mozilla-firefox -display XXX www.google.fr
Dans le shell, faire echo $DISPLAY et mettre cette valeur dans le script:
mozilla-firefox -display XXX www.google.fr
merci d'avoir répondu =)
mais cela ne fonctionne toujours pas ...
j'ai fais :
[root@localhost user1]# echo $DISPLAY
:0.0
donc j'ai :
#!/bin/sh
killall -9 /usr/lib/mozilla-firefox-1.0.6/mozilla-firefox-bin
mozilla-firefox -display 0.0 www.google.fr
Et cela ne fonctionne pas, dsl je débute sous linux .
Que puis je faire ?
mais cela ne fonctionne toujours pas ...
j'ai fais :
[root@localhost user1]# echo $DISPLAY
:0.0
donc j'ai :
#!/bin/sh
killall -9 /usr/lib/mozilla-firefox-1.0.6/mozilla-firefox-bin
mozilla-firefox -display 0.0 www.google.fr
Et cela ne fonctionne pas, dsl je débute sous linux .
Que puis je faire ?
les : sont importants
mozilla-firefox -display :0.0 www.google.fr
sinon, récupérer les erreurs:
mozilla-firefox -display :0.0 www.google.fr 1>/tmp/log 2>&1
et voir dans /tmp/log
mozilla-firefox -display :0.0 www.google.fr
sinon, récupérer les erreurs:
mozilla-firefox -display :0.0 www.google.fr 1>/tmp/log 2>&1
et voir dans /tmp/log
j'ai fais ce que tu ma dit pour la recup des érreur , j'obtient ceci:
"log2" 0L, 0C
E576: viminfo: '>' manquant à la ligne 0^@
E576: viminfo: '>' manquant à la ligne ^I+^I1^I5^@
E576: viminfo: '>' manquant à la ligne ^I+^I2^I32^@
E576: viminfo: '>' manquant à la ligne ^I+^I3^I32^@
E576: viminfo: '>' manquant à la ligne ^I+^I4^I24^@
E576: viminfo: '>' manquant à la ligne ^I+^I2^I8^@
E576: viminfo: '>' manquant à la ligne ^I+^I3^I8^@
E576: viminfo: '>' manquant à la ligne ^I+^I1^I3^@
Appuyez sur ENTRÉE ou tapez une commande pour continuer
je précise aussi que l'orsque je veux éditer crontab ( crontab -e ) j'ai le même message idem quand j'enregistre les modifications mais les modfications sont prises .
"log2" 0L, 0C
E576: viminfo: '>' manquant à la ligne 0^@
E576: viminfo: '>' manquant à la ligne ^I+^I1^I5^@
E576: viminfo: '>' manquant à la ligne ^I+^I2^I32^@
E576: viminfo: '>' manquant à la ligne ^I+^I3^I32^@
E576: viminfo: '>' manquant à la ligne ^I+^I4^I24^@
E576: viminfo: '>' manquant à la ligne ^I+^I2^I8^@
E576: viminfo: '>' manquant à la ligne ^I+^I3^I8^@
E576: viminfo: '>' manquant à la ligne ^I+^I1^I3^@
Appuyez sur ENTRÉE ou tapez une commande pour continuer
je précise aussi que l'orsque je veux éditer crontab ( crontab -e ) j'ai le même message idem quand j'enregistre les modifications mais les modfications sont prises .
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Ca c'est des erreurs vim, le fichier .viminfo .vimrc ou .exrc doit être mauvais.
attention aux espaces:
mozilla-firefox -display :0.0 www.google.fr"espace" 1>/tmp/log"espace" 2>&1
et qu'affiche cat /tmp/log
attention aux espaces:
mozilla-firefox -display :0.0 www.google.fr"espace" 1>/tmp/log"espace" 2>&1
et qu'affiche cat /tmp/log
le cat /tmp/log n'affiche rien .
merci quand meme de te pencher sur mon cas je suis sur qu'en à beaucoup et surtout des plus complexes que celui ci.
moi qui pensais qu'on me traittrais lol parce que c'est du basique de chez basique ... bin le basique il me chauffe la =)
merci quand meme de te pencher sur mon cas je suis sur qu'en à beaucoup et surtout des plus complexes que celui ci.
moi qui pensais qu'on me traittrais lol parce que c'est du basique de chez basique ... bin le basique il me chauffe la =)
Salut,
chez moi ça marche
les : sont importants
mozilla-firefox -display :0.0 www.google.fr
dubcek a oublié un tiret
--display au lieu de -display
chez moi ça marche
#!/bin/bash killall -9 firefox-bin /usr/bin/firefox --display=:0.0 'www.google.fr'&
les : sont importants
mozilla-firefox -display :0.0 www.google.fr
dubcek a oublié un tiret
--display au lieu de -display
Affiche plus d'info, modifier le script:
#!/bin/sh
set -x
set
killall -9 /usr/lib/mozilla-firefox-1.0.6/mozilla-firefox-bin
mozilla-firefox -display :0.0 www.google.fr
modifer le crontab
*/1 * * * * /home/user1/Desktop/script.sh >/tmp/log 2>&1
#!/bin/sh
set -x
set
killall -9 /usr/lib/mozilla-firefox-1.0.6/mozilla-firefox-bin
mozilla-firefox -display :0.0 www.google.fr
modifer le crontab
*/1 * * * * /home/user1/Desktop/script.sh >/tmp/log 2>&1
merci a vous mais alors je met
mozilla-firefox -display :0.0 www.google.fr **
ou
/usr/bin/firefox --display=:0.0 'www.google.fr'&
car la , ya un =
J'ai formaté la machine linux car le problème de vim la affiche de temps en temps qu'il enregistre pas les modif dans le crontab.
Donc je vais reprendre a zéro.
Merci encore.
mozilla-firefox -display :0.0 www.google.fr **
ou
/usr/bin/firefox --display=:0.0 'www.google.fr'&
car la , ya un =
J'ai formaté la machine linux car le problème de vim la affiche de temps en temps qu'il enregistre pas les modif dans le crontab.
Donc je vais reprendre a zéro.
Merci encore.
Linux, c'est pas Windaube ... on ne reformatte pas pour un problem vim, il faut corriger les fichiers de démarrage vim
Les 2 notations display sont valides, la mienne étant la notation X d'origine.
un job cron n'a pas l'environnement qu'un utilisateur a après un login. Essayer de mettre dans le script : . .profile
si le login shell est sh, ksh ou bash
Les 2 notations display sont valides, la mienne étant la notation X d'origine.
un job cron n'a pas l'environnement qu'un utilisateur a après un login. Essayer de mettre dans le script : . .profile
si le login shell est sh, ksh ou bash
enfait j'ai du céder le pc a un stagiaire dc je vais réinstaller linux sur un autre pc c'est pour cela .
à la base c'était un script.sh, que veut tu dire par :
" un job cron n'a pas l'environnement qu'un utilisateur a après un login. Essayer de mettre dans le script : . .profile
si le login shell est sh, ksh ou bash "
?
Merci d'avance.
à la base c'était un script.sh, que veut tu dire par :
" un job cron n'a pas l'environnement qu'un utilisateur a après un login. Essayer de mettre dans le script : . .profile
si le login shell est sh, ksh ou bash "
?
Merci d'avance.
Au login, le shell exécute des fichiers de config, .profile, .cshrc, .kshrc qui vont définir tout l'environnement: PATH, et plein d'autres variables, affichées par la commande set.
Le cron n'exécute pas ces fichiers et donc le script tourne avec le minimum et il peut manquer des définitions. On peut le voir avec la commande set dans le script.
Le cron n'exécute pas ces fichiers et donc le script tourne avec le minimum et il peut manquer des définitions. On peut le voir avec la commande set dans le script.
ok je vais tester ce que tu m'a donner dans le message précédent vers 12h30 maxi 13h donc je vous redirai quoi
Merci encore
Merci encore
re Bonjour,
je n'ai pas pu tester cela mais ce midi c'est certains je test et je te dis quoi, par contre pour ce que tu m'a dit :
un job cron n'a pas l'environnement qu'un utilisateur a après un login. Essayer de mettre dans le script : . .profile
le .profile je le place ou dans le script ?
merci d'avance.
je n'ai pas pu tester cela mais ce midi c'est certains je test et je te dis quoi, par contre pour ce que tu m'a dit :
un job cron n'a pas l'environnement qu'un utilisateur a après un login. Essayer de mettre dans le script : . .profile
le .profile je le place ou dans le script ?
merci d'avance.
je n'ai pas rajouter le .profile et cela ne fonctionne toujours pas donc je vais tenter avec on verra bien.