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 :

Shell et perl problème d'interpolation de variable.


Sujet :

Langage Perl

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2005
    Messages
    123
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 123
    Par défaut Shell et perl problème d'interpolation de variable.
    Bonjour à tous,

    Voilà, j'ai un petit problème, j'ai besoins de développé un programme en Shell. Dans mon scripte, je désire utiliser du perl pour extraire des données.

    Le problème, c'est que je ne récupère rien car je pense avoir un problème d'interpolation de variable, mais je n'arrive pas à le résoudre.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    #!/bin/bash
    CYL="/dev/hdb: 2434 cylindres, 255 têtes, 63 secteurs/piste"
    perl -e '$CYL =~ m/\b([\d]+)/; print $1;'
    Normalement je devais récupérer les valeurs chiffrées, ce qui fonctionne parfaitement dans un programme perl classique, mais là je ne récupère rien.

    Si vous avez une petite idée, je pense que ça n'est pas grand-chose et que je m'y prends très mal.

    Par avance merci pour toute réponse.

  2. #2
    Membre Expert
    Avatar de 2Eurocents
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    2 177
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 2 177
    Par défaut Re: Shell et perl problème d'interpolation de variable.
    Et comme ça ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    #!/bin/bash
    CYL="/dev/hdb: 2434 cylindres, 255 têtes, 63 secteurs/piste"
    perl -e '$ENV{CYL} =~ m/\b([\d]+)/; print $1;'

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2005
    Messages
    123
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 123
    Par défaut
    Merci pour ta réponse, mais la probléme persiste

  4. #4
    Membre Expert
    Avatar de 2Eurocents
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    2 177
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 2 177
    Par défaut Re: Shell et perl problème d'interpolation de variable.
    Alors exporte CYL !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    #!/bin/bash
    export CYL="/dev/hdb: 2434 cylindres, 255 têtes, 63 secteurs/piste"
    perl -e '$ENV{CYL} =~ m/\b([\d]+)/; print $1;'

  5. #5
    Jeh
    Jeh est déconnecté
    Membre expérimenté Avatar de Jeh
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    203
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Septembre 2003
    Messages : 203
    Par défaut
    T'as des erreurs Perl ?
    Ce serait pas des histoires de ' et de " ? Car avec '$CYL', normalement ta variable $CYL n'est pas interprétée.
    De plus, il est possible que les '/' dans ta chaine foutent le bazar dans ta regexp...
    J'ai pas du tout bossé sur les programmes Perl en uniligne mais de prime abord, c'est ce qui est venu à mon esprit Perliste.

  6. #6
    Membre Expert
    Avatar de 2Eurocents
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    2 177
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 2 177
    Par défaut Re: Shell et perl problème d'interpolation de variable.
    Citation Envoyé par 2Eurocents
    Alors exporte CYL !
    Et, j'avais pas vu, corrige ton expression rationnelle : tu n'as pas besoin des [ ].

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    #!/bin/bash
    export CYL="/dev/hdb: 2434 cylindres, 255 têtes, 63 secteurs/piste"
    perl -e '$ENV{CYL} =~ m/\b(\d+)/; print $1;'
    Ca fonctionne, j'ai testé 8)

  7. #7
    Jeh
    Jeh est déconnecté
    Membre expérimenté Avatar de Jeh
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    203
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Septembre 2003
    Messages : 203
    Par défaut
    Bon bah j'ai rien dit...
    ça fonctionne chez moi...

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2005
    Messages
    123
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 123
    Par défaut Re: Shell et perl problème d'interpolation de variable.
    Citation Envoyé par 2Eurocents
    Alors exporte CYL !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    #!/bin/bash
    export CYL="/dev/hdb: 2434 cylindres, 255 têtes, 63 secteurs/piste"
    perl -e '$ENV{CYL} =~ m/\b([\d]+)/; print $1;'
    Juste avant que tu ne me réponde ça j'avais exporté la variable et en effet ça fonctionne !

    Merci Beaucoup pour vos réponses !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [PERL] problème avec une variable de session PHP
    Par ingeston dans le forum Modules
    Réponses: 1
    Dernier message: 18/04/2012, 16h32
  2. Réponses: 21
    Dernier message: 21/08/2008, 23h30
  3. Réponses: 5
    Dernier message: 31/08/2005, 10h05
  4. [PERL] problème désallocation de variable
    Par LE NEINDRE dans le forum Langage
    Réponses: 11
    Dernier message: 24/08/2005, 10h07
  5. [XSL]Problème de portée des variables
    Par djulesp dans le forum XSL/XSLT/XPATH
    Réponses: 6
    Dernier message: 17/09/2004, 10h34

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