Lecture colonne jusqu'a variable

Résolu
Bonjour,

voilà mon problème: j'ai un fichier du type:

konsole@home> cat fichier_tri
50.000 48.000 -1.0
52.000 25.000 -1.2
53.000 29.000 -0.5
55.000 58.000 1.5
56.000 68.000 2.5
...


je voudrais écrire dans un autre fichier la colonne 2 et 3 avec uniquement les valeurs supérieures à 48.00 dans la colonne 1 du nouveau fichier.

pour le moment j'ai:

# suppression colonne 3 
# tri dans l'ordre décroissant sur la colonne 1
cat fichier_raw | awk '{print $1, $2, $4}' > tmp
sort -n tmp > fichier_tri

# definition de la variable "limite de recherche"
LIMIT='head -1 fichier_tri | awk '{print $2}''


il me manque la partie expliquée plus haut comment à partir de fichier_tri

arrivé à:

konsole@home> cat fichier_fini
48.000 -1.0
58.000 1.5
68.000 2.5
...


3 réponses

  1. Contributeur
    Salut,

    $ cat fich.txt 
    50.000 48.000 -1.0
    52.000 25.000 -1.2
    53.000 29.000 -0.5
    55.000 58.000 1.5
    56.000 68.000 2.5
    
    $ awk '$2 >= 48 { print $2,$3 }' fich.txt 
    48.000 -1.0
    58.000 1.5
    68.000 2.5

    ;-))
    2
    1. merci bien!!

      j'etais parti dans les while read line, test et Cie...
      0
      1. le problème que je recontre maintenant est, que codé en dur 48 fonctionne par contre, si 48 se trouve dans une variable

         
        Xmax='sort -nr fich.txt | tail -1 | awk '{print $2}''
        awk '$2 >= $Xmax { print $2,$3 }' fich.txt 


        n'a pas l'air de fonctionner...

        une idée ?
        0
        1. Contributeur
          awk '$2 >= '"$Xmax"' { print $2,$3 }' fich.txt 
          ou
          awk -v X=$Xmax '$2 >= X { print $2,$3 }' fich.txt 
          0
        2. merci une fois de plus...
          0