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 :

petit problème commande awk


Sujet :

Shell et commandes GNU

  1. #1
    Membre très actif
    Homme Profil pro
    Lille
    Inscrit en
    Février 2011
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Lille
    Secteur : Services à domicile

    Informations forums :
    Inscription : Février 2011
    Messages : 154
    Par défaut petit problème commande awk
    Bonjour
    j'ai la ligne suivante lors d'une commande,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    iso.3.6.1.4.1.2021.13.15.1.1.2.28 = STRING: "sdb1"
    je voudrai récupérer le 28 j'ai fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    awk -F "." '{print substr($13,0)}'
    et ça
    awk -F "." '{print substr($13,0,index($0,"="))}'
    et j'obtiens

    28 = STRING: "sdb1"

    Je n'arrive pas a supprimer ce qu'il y a après le 28
    Merci de votre aide

  2. #2
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 946
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 946
    Par défaut
    Salut,

    Essaie avec "split" plutôt :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $ echo $A
    iso.3.6.1.4.1.2021.13.15.1.1.2.28 = STRING: "sdb1"
    
    $ echo $A | awk '{split($1,a,"."); print a[length(a)]}'
    28

  3. #3
    Membre très actif
    Homme Profil pro
    Lille
    Inscrit en
    Février 2011
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Lille
    Secteur : Services à domicile

    Informations forums :
    Inscription : Février 2011
    Messages : 154
    Par défaut
    Lorsque je fais la commande suivante,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    snmpwalk -v 2c  -c public 192.168.20.11 .1.3.6.1.4.1.2021.13.15.1.1.2 | grep sdb1 | awk '{split($1,a,"."); print a[length(a)]}'
    j'ai

    awk: line 1: illegal reference to array a

  4. #4
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 946
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 946
    Par défaut
    On peut voir la sortie de :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    snmpwalk -v 2c -c public 192.168.20.11 .1.3.6.1.4.1.2021.13.15.1.1.2 | grep sdb1
    s'il te plaît, merci.

  5. #5
    Membre très actif
    Homme Profil pro
    Lille
    Inscrit en
    Février 2011
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Lille
    Secteur : Services à domicile

    Informations forums :
    Inscription : Février 2011
    Messages : 154
    Par défaut
    oui pardon ça va être plus simple pour vous

    --snmpwalk -v 2c -c public 192.168.20.11 .1.3.6.1.4.1.2021.13.15.1.1.2 | grep sdb1
    iso.3.6.1.4.1.2021.13.15.1.1.2.28 = STRING: "sdb1"

  6. #6
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 946
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 946
    Par défaut
    c'est la même que l'exemple fourni.

    Quel système ?
    Quelle version de "awk" ?

  7. #7
    Membre très actif
    Homme Profil pro
    Lille
    Inscrit en
    Février 2011
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Lille
    Secteur : Services à domicile

    Informations forums :
    Inscription : Février 2011
    Messages : 154
    Par défaut
    je suis sous un debian et j'ai mawk, Version 1.2 Dec 22 1994

  8. #8
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 946
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 946
    Par défaut
    T'as pas gawk d'installé plutôt ?

  9. #9
    Membre très actif
    Homme Profil pro
    Lille
    Inscrit en
    Février 2011
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Lille
    Secteur : Services à domicile

    Informations forums :
    Inscription : Février 2011
    Messages : 154
    Par défaut
    non non je ne pense pas, si je fais un man awk il me parle de mawk, si je fais un man gawk, il n'existe pas

  10. #10
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 946
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 946
    Par défaut
    Essaye voir ce que retourne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mawk '{split($1,a,"."); print a[13]}'

  11. #11
    Membre très actif
    Homme Profil pro
    Lille
    Inscrit en
    Février 2011
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Lille
    Secteur : Services à domicile

    Informations forums :
    Inscription : Février 2011
    Messages : 154
    Par défaut
    yep ça marche merci !!!!
    Mais comment faire pour récupérer
    2.67.58

    sur ça
    iso.3.6.1.4.1.9600.1.1.1.1.1.2.67.58 = STRING: "C:"

    Peux-tu aussi me détailler ta commande car je n’arrive pas trop a voir ce qu'elle fait.

  12. #12
    Membre très actif
    Homme Profil pro
    Lille
    Inscrit en
    Février 2011
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Lille
    Secteur : Services à domicile

    Informations forums :
    Inscription : Février 2011
    Messages : 154
    Par défaut
    j'ai fais ca:
    snmpwalk -v 2c -c public 192.168.20.10 .1.3.6.1.4.1.9600.1.1.1.1.1 | grep C: | awk -F "." '{print $13"."$14"."$15"."}'
    et j'obtiens:
    2.67.58 = STRING: "C:".
    Mais je n'arrive pas a ne garder que 2.67.58 j'ai essayé avec un split mais sans succés et j'ai essayé ça:
    snmpwalk -v 2c -c public 192.168.20.10 .1.3.6.1.4.1.9600.1.1.1.1.1 | grep C: | awk -F "." '{print $13"."$14"."substr($10,0,index($10,"="))}'
    mais cela ne marche pas
    une petit coup de pouce svp

    J'ai trouvé ca:

    snmpwalk -v 2c -c public 192.168.20.10 .1.3.6.1.4.1.9600.1.1.1.1.1 | grep C: | awk -F "." '{print $13"."$14"."$15"."}' | mawk -F "=" '{print $1}

    mais je trouve ça un peu lourd...

  13. #13
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 946
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 946
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    awk 'BEGIN{ OFS="." }{ split($1,a,"."); print a[13],a[14],a[15] }'

  14. #14
    Membre très actif
    Homme Profil pro
    Lille
    Inscrit en
    Février 2011
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Lille
    Secteur : Services à domicile

    Informations forums :
    Inscription : Février 2011
    Messages : 154
    Par défaut
    Merci zipe31

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 25/08/2009, 15h20
  2. problème commande awk
    Par miketidy dans le forum Shell et commandes GNU
    Réponses: 20
    Dernier message: 13/06/2008, 14h52
  3. problème script et commande awk
    Par sajodia dans le forum Shell et commandes GNU
    Réponses: 17
    Dernier message: 30/05/2008, 09h16
  4. problème script et commande awk
    Par kiell dans le forum Shell et commandes GNU
    Réponses: 1
    Dernier message: 27/05/2008, 12h31
  5. problème avec la commande awk
    Par salseropom dans le forum Shell et commandes GNU
    Réponses: 4
    Dernier message: 05/06/2007, 13h02

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