Title: Probleme avec cron

        Bonjour � tous,
je rencontre un probleme avec un script que je lance
tous les jours par l'int�m�daire de cron.

Je suis sous Mandrake 7.2 kernel 2.2.17-21. je souhaite lancer
le script perl suivant tous les jours (j'ai volontairement tronqu� le script car
le probleme se situe dans ces lignes) :

#!/usr/bin/perl -w
use strict;
use diagnostics;

# Mise en forme de la date au format Windows
my $Date;
my @Date = split(/\./,`/bin/date --date '1 days ago' +%x`);
if ($Date[0] =~ /^0/)
        {
        $Date[0] =~ tr /0//d;
        }
if ($Date[1] =~ /^0/)
        {
        $Date[1] =~ tr /0//d;
        }
chomp(@Date);
my $FullDate = "$Date[0]_$Date[1]_$Date[2]";
print "$FullDate\";

Quand je lance le script dans une fenetre shell : . script.pl
17 01 200   => pas de probleme.

Je place le script dans le repertoire /etc/cron.daily
et quand le cron est lanc� :

Use of uninitialized value in pattern match (m//) at /studiel/sbin/backuplog.pl
        line 12 (#1)
   
    (W uninitialized) An undefined value was used as if it were already defined.  It was
    interpreted as a "" or a 0, but maybe it was a mistake.  To suppress this
    warning assign a defined value to your variables.
   
Use of uninitialized value in concatenation (.) at /studiel/sbin/backuplog.pl
        line 17 (#1)
Use of uninitialized value in concatenation (.) at /studiel/sbin/backuplog.pl
        line 24 (#1)
Uncaught exception from user code:
        Impossible d ouvrir /studiel/backuplog/006Q__1/17/1.log

DB2 problem...: missing or empty key value specified

En fait la variable @Date ne s'initalise pas. Dans /etc/crontab j'ai bien d�clar� le chemin
des binaires que je lance, a savoir :

PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/studiel/bin:/studiel/sbin:/studiel/sbin/perl.

Donc je ne sais pas ou ca peche, que faut il ajouter a tout ca pour que mon script
fonctionne correctement ?

merci de vos reponses
christophe bruyere







Répondre à