Forum Programmation.shell Cron (je pense)

Posté par  .
Étiquettes : aucune
0
8
déc.
2005
Bonsoir à tou(te)s...

Dans scipt sh, j'ai ceci :

lynx -dump -force_html http://infotrafic.grandlyon.com/_Ptnoirs/PTptnoirs.php > result

Je me sers ensuite du contenu de result.

Mon pb: si je lance mon script au prompt, pas de problème : le contenu de la page est très bien récupéré. mais si je lance le même script avec cron : là tout les caractères accentués partent sont faussés et ça donne un charabia compréhensible mais pas très agréable à l'oeil...

Je suppose que 'est un problème de variable d'environnement mais je n'ai pas trouvé la faille...

Merci de vos suggestions avisées.
  • # LANG=....

    Posté par  . Évalué à 3.

    La page man lynx référence l'ensemble des variables d'environnement utilisées par ce programme. Si tu as un problème «d'accents», tu devrais peut être jeter un oeil sur les variables jouant sur les locales (LANG en particulier) ...
    cron fonctionnant avec un environnement très dépouillé, pense à étoffer cet environnement avant de lancer tes commandes, si nécessaire.
    • [^] # Re: LANG=....

      Posté par  . Évalué à 1.

      le cron job ne source pas les différents profiles, ni le /etc/profile, ni le .bashrc, si tu as besoin de variables exportées par ces fichiers, il faut les definir dans ta crontab.
      Par exemple:
      1 * * * * . /etc/profile;mon_script.sh

      man 5 crontab pour plus d'explications
    • [^] # Re: LANG=....

      Posté par  . Évalué à 1.

      Effectivement c'est probablement un problème de locales. Au début de ton script, avant d'appeler lynx, ajoute cette ligne:

      export LANG=en_US.utf8

      Met la locale que tu utilises habituellement à la place de "en_US.utf8".

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.