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

Shell et commandes GNU Discussion :

Comment récupérer la valeur d'un champ


Sujet :

Shell et commandes GNU

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Janvier 2013
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2013
    Messages : 2
    Par défaut Comment récupérer la valeur d'un champ
    Bonjour,

    Comment récupérer la valeur d'un champ sur une ligne sachant que les éléments de la ligne peuvent se trouver à différents endroits ?
    Je m'explique :
    Je voudrais récupérer la valeur du champ/variable name à savoir serv1_srv dans la ligne suivante :

    <service autostart="1" exclusive="0" max_restarts="2" name="serv1_srv" recovery="relocate" restart_expire_time="0">

    name="serv_srv" peut être placé n'importe où !!

    Merci de votre aide.

  2. #2
    Modérateur
    Avatar de gangsoleil
    Homme Profil pro
    Manager / Cyber Sécurité
    Inscrit en
    Mai 2004
    Messages
    10 150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Manager / Cyber Sécurité

    Informations forums :
    Inscription : Mai 2004
    Messages : 10 150
    Par défaut
    Bonjour,

    Quel langage ? awk te permet de faire ce que tu veux par exemple.
    "La route est longue, mais le chemin est libre" -- https://framasoft.org/
    Les règles du forum

  3. #3
    Candidat au Club
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Janvier 2013
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2013
    Messages : 2
    Par défaut
    oui awk par example, mais c'est comment j'ai du mal !!!!

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    290
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 290
    Par défaut
    Voici une idée (en python)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    #!/usr/bin/env python
     
    def main():
        str_to_parse = """<service autostart="1" exclusive="0" max_restarts="2" name="serv1_srv" recovery="relocate" restart_expire_time="0">"""
        value = ""
        splitted = str_to_parse.split('=')
        for index, token in enumerate(splitted):
            if token.endswith(' name'): 
                value = splitted[index + 1].split('"')[1]
     
        print(value)
     
    if __name__ == '__main__':
        main()
    Splittez sur '=', trouvez le token qui termine par ' name', prenez le token d'après en récupérant ce qu'il y a entre les quotes.


  5. #5
    Expert confirmé Avatar de disedorgue
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Décembre 2012
    Messages
    4 341
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2012
    Messages : 4 341
    Par défaut
    Bonjour,

    Petit exemple en sed:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $ echo '<service autostart="1" exclusive="0" max_restarts="2" name="serv1_srv" recovery="relocate" restart_expire_time="0">' | sed -e 's/.* name="\([[:graph:]]*\)".*/\1/g'
    serv1_srv
    Cordialement.

Discussions similaires

  1. Comment récupérer les valeurs d'un champ..
    Par KOTEKOI dans le forum MFC
    Réponses: 5
    Dernier message: 11/03/2011, 22h23
  2. Comment récupérer la valeur d'un champ radio ?
    Par Alexandrebox dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 04/06/2009, 20h57
  3. Comment récupérer la valeur d'un champ HTML ?
    Par Ekimasu dans le forum Flex
    Réponses: 5
    Dernier message: 26/07/2007, 14h55
  4. Réponses: 4
    Dernier message: 13/09/2006, 16h02
  5. Réponses: 7
    Dernier message: 15/09/2005, 06h37

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