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 :

prob comande awk


Sujet :

Shell et commandes GNU

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    161
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 161
    Par défaut prob comande awk
    Bonjour,

    j'ai un petit souci, j'ai un fichier qui contient la ligne suivante

    je voudrait extraire et mettre dans une variable:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var1="label=http://url"
    et

    var2="num"

    j'ai utilisé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    var1=awk -F ':|=' '{print $2}' fichier
    var2=awk -F ':|=' '{print $1}' fichier
    mais cela me donne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    var1="label=http" (alors que je veux plutot "label=http://url")
    var2="num"
    Merci d'avance

  2. #2
    Membre Expert
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    792
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 792
    Par défaut
    Plutôt que d'utiliser une commande extérieure, le shell offre une solution toute simple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    var1=${chaine#*:}
    var2=${chaine%%:*}
    Edit:

    Et si ton fichier ne contient qu'une seule ligne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    chaine=$(<fichier)
    ## ou bien
    read chaine < fichier

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    161
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 161
    Par défaut
    merci pour ta réponse;

    maintenant, au lieu d'avoir

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var1="label=http://url"
    j'ai

    et je me suis rendu compte que j'en ai des chaines du type:

    et du coup ca me conserve juste :


  4. #4
    Membre Expert
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    792
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 792
    Par défaut
    Tout d'abord, j'ai fait une erreur dans ma substitution de commande plus haut. Il faut supprimer la chaine la plus courte avant le :. Il faut donc l'opérateur # et pas ##. Corrigé dans mon post.

    Ensuite, donne-nous tous les cas possibles et ce que tu veux en extraire.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    161
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 161
    Par défaut
    nikel man

    merci pout ton aide

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

Discussions similaires

  1. [Script]prob de clés étrangères
    Par Seb7 dans le forum Langage SQL
    Réponses: 13
    Dernier message: 08/07/2003, 17h37
  2. Prob, images, Panels, et form.
    Par CaptainChoc dans le forum Composants VCL
    Réponses: 2
    Dernier message: 10/05/2003, 10h08
  3. [langage] awk et sed dans script perl
    Par scoti dans le forum Langage
    Réponses: 3
    Dernier message: 07/04/2003, 18h26
  4. Thread probs avec WaitFor()
    Par pixelrock dans le forum C++Builder
    Réponses: 2
    Dernier message: 04/11/2002, 09h40
  5. [Kylix] prob listview
    Par sdoura2 dans le forum EDI
    Réponses: 1
    Dernier message: 22/10/2002, 21h37

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