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 :

script shell : probleme avec sed et awk


Sujet :

Shell et commandes GNU

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    1 298
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 298
    Points : 886
    Points
    886
    Par défaut script shell : probleme avec sed et awk
    Bonjour, j'ai un fichier qui ne contient que des chiffres. Je désire diviser toutes les colonnes par 2 excepté la 1e. Mon problème est que les décimaux sont représentés par un point et non une virgule et j'ai l'impression que pour utiliser la commande awk il faut une virgule. Voici mon script

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    N=2
     
    sed "s/./,/gw toto" Mean.txt
    awk '{print $1,$2/$N,$3/$N,$4/$N,$5/$N,$6/$N,$7/$N,$8/$N,$9/$N,$10/$N,$11/$N,$12/$N,$13/$N,$14/$N,$15/$N,$16/$N,$17/$N,$18/$N,$19/$N,$20/$N,$21/$N,$22/$N,$23/$N,$24/$N,$25/$N,$26/$N,$27/$N,$28/$N}' toto > tata
     
    mv tata Mean.txt
    1) ma commande sed ne marche pas. Dans mon fichier toto, je n'ai plus que des virgules... Comment faire pour avoir un fichier où tous les points ont été remplacés par une virgule ?

    2) à propos de la commande awk, j'ai essayé de faire une boucle for mais sans grand succes. Pouvez-vous m'aider s'il vous plait ?

    Merci.

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    1 298
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 298
    Points : 886
    Points
    886
    Par défaut
    Bonjour, je me pose la question suivante : si je fais

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    sed 's/i/toto/g' essai.txt
    avec mon fichier essai.txt qui contient

    la sortie est bien

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    abcdtotof
    ghototojk
    donc la commande sed marche bien. si maintenant mon fichier essai.txt contient

    et que je fais

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    sed 's/./,/g' essai.txt
    la sortie est

    Pourquoi ?

  3. #3
    Membre régulier

    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    64
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 64
    Points : 71
    Points
    71
    Par défaut
    Le point represente n'importe quel caractére

    utilise \ pour echapper le caractére :

    sed 's/\./,/g' fichiertest.txt

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    1 298
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 298
    Points : 886
    Points
    886
    Par défaut
    OK merci ! ca marche.

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

Discussions similaires

  1. [Shell] problème avec sed et awk
    Par tizilfin dans le forum Shell et commandes GNU
    Réponses: 5
    Dernier message: 15/11/2007, 13h01
  2. Script avec sed et awk
    Par arezki76 dans le forum Shell et commandes GNU
    Réponses: 15
    Dernier message: 04/01/2007, 14h56
  3. Script SHELL/UNIX avec mysql
    Par HacHHacH dans le forum Linux
    Réponses: 6
    Dernier message: 06/04/2006, 23h48
  4. Script bash : Pb avec sed
    Par fred64 dans le forum Linux
    Réponses: 3
    Dernier message: 19/08/2005, 11h24
  5. Problème avec la cmd --> AWK
    Par OrangeBud dans le forum Linux
    Réponses: 2
    Dernier message: 20/07/2004, 10h26

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