IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Perl Discussion :

diff de fichier et envoi de mail automatique


Sujet :

Langage Perl

  1. #21
    Membre confirmé Avatar de yjuliet
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Août 2006
    Messages
    362
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Août 2006
    Messages : 362
    Points : 460
    Points
    460
    Par défaut
    Citation Envoyé par Maniac
    J'ai pensé rajouté ce bout de code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    next if ($linea =~ /tata.*|toto.*/);
    next if ($lineb =~ /tata.*|toto.*/);
    Le but est atteint mais j'ai des erreurs en sorti :
    Use of uninitialized value in pattern match (m//) at ./test1.pl line 44, <$inputb> line 5.
    Use of uninitialized value in pattern match (m//) at ./test1.pl line 45, <$inputb> line 5.
    Le problème se situe dans le code rajouté et est lié à la lecture de ton fichier :

    la ligne 5 du fichier doit être une ligne "vide" dans les 2 fichiers. Du coup, lorsqu'il essaye le test il tombe sur un opérande gauche vide.

  2. #22
    Membre éprouvé Avatar de MarneusCalgarXP
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    911
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 911
    Points : 1 118
    Points
    1 118
    Par défaut
    Citation Envoyé par Maniac
    Je viens de tester. Le script s'execute bien (pas d'erreur) mais la sorti reste isStillEqual : que le fichier soit identique ou non
    C'est normal, c'est la valeur perl pour dire "faux".
    En contexte scalaire numérique, elle vaut 0.
    En contexte de chaine de caractère, elle vaut la chaine vide.

    Attention, elle est différente de la valeur undef, qui elle est indéfinie.

    Si tu veux l'afficher correctement, tu peux remplacer ton code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    print "isStillEqual : $isStillEqual\n";
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    printf "isStillEqual : %d\n", ($isStillEqual);
    Cela va forcer le contexte numérique.

    Mais sinon tu peux très bien tester de la manière suivante, ca va fonctionner:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if ($isStillEqual == 0) {print "isStillEqual vaut 0";}
    if (! ($isStillEqual) {print "isStillEqual vaut 'faux'";}
    unless ($isStillEqual) {print "isStillEqual vaut 'faux'";}

    Je ne répond à aucune question technique par MP.

    Si votre problème est réglé, n'oubliez pas Dans tous les cas

  3. #23
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 20
    Points : 7
    Points
    7
    Par défaut
    J'ai finalement utilisé ce bout de code pour la comparaison
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    while ($linea = <$inputa>) {
                    $lineb = <$inputb>;
                    next if ( ($linea =~ /$regex/) and ($lineb =~ /$regex/) ) ;
     
                    if ( $linea ne $lineb ) {
                            $isEqual = 0;
                            print "$linea - $lineb";
                    }
            }
    Mon script fonctionne pleinement maintenant.
    Merci à tous pour votre aide.

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. [CRON] Envoi de mail automatique
    Par a_me dans le forum Serveurs (Apache, IIS,...)
    Réponses: 10
    Dernier message: 20/10/2007, 12h17
  2. [DDE]envoi de mail automatique selon le résultat d'une requête
    Par celiaaa dans le forum Requêtes et SQL.
    Réponses: 8
    Dernier message: 10/04/2007, 19h10
  3. [VB6]envoie de mail automatiquement
    Par riesseg dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 28/04/2006, 14h14
  4. Réponses: 14
    Dernier message: 17/11/2005, 17h16
  5. Envoi de mail automatique avec Visual C++
    Par cza dans le forum MFC
    Réponses: 2
    Dernier message: 22/02/2005, 15h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo