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

  1. #1
    Expert éminent

    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    juillet 2004
    Messages
    2 713
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Technicien Help Desk

    Informations forums :
    Inscription : juillet 2004
    Messages : 2 713
    Points : 6 423
    Points
    6 423

    Par défaut Récupérer une donnée via le résultat d'une commande

    Bonjour

    En sortie d'une commande, j'obtiens ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "instanceName":"urxvt","borderWidth":2,"state":"pseudo_tiled","lastState":"tiled"
    Je souhaite récupérer uniquement: pseudo_tiled avec un grep mais je n'y parviens pas

    Un petit idée, s'il vous plaît ? Merci
    .Olivier

  2. #2
    Expert éminent Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    septembre 2005
    Messages
    3 292
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : septembre 2005
    Messages : 3 292
    Points : 7 756
    Points
    7 756

    Par défaut

    Bonjour

    Grep filtre généralement les lignes.
    Donc on peut douter que ce soit l'outil idoine.
    À moins que tu utilises l'option "-o".
    Mais il faudrait alors que ton champ ait un motif particulier. Ce dont on peut douter.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $ grep -o "\"pseu.._.iled\"" fichier
    "pseudo_tiled"

    Sinon, utilise plutôt awk :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $ awk -F'[:,]' '{print $6;}' fichier
    "pseudo_tiled"
    Dis-donc, ton fichier, ne serait-il pas un fichier structuré (du genre JSON) ?
    Alors utilises l'outil adéquat pour la structure (du genre jq) ...
    Cette réponse vous apporte quelque chose ? Cliquez sur en bas à droite du message.
    Votre problème est résolu ? Cliquez sur en bas de page.

    Linux, grep/sed/awk/xml... et autres fichiers plats, Java, C++

  3. #3
    Expert éminent

    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    juillet 2004
    Messages
    2 713
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Technicien Help Desk

    Informations forums :
    Inscription : juillet 2004
    Messages : 2 713
    Points : 6 423
    Points
    6 423

    Par défaut

    Dis-donc, ton fichier, ne serait-il pas un fichier structuré (du genre JSON) ?
    Alors utilises l'outil adéquat pour la structure (du genre jq) ...
    En effet et c'est plus pratique:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    bspc query -T -n | jq '.client.state'
    me retourne bien
    Merci beacoup
    .Olivier

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 13/03/2017, 03h59
  2. Réponses: 10
    Dernier message: 18/02/2016, 14h21
  3. Réponses: 6
    Dernier message: 24/02/2014, 16h55
  4. Réponses: 2
    Dernier message: 16/08/2012, 11h28
  5. Réponses: 15
    Dernier message: 20/06/2006, 11h29

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