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

    ;-))
    1. merci bien!!

      j'etais parti dans les while read line, test et Cie...
      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 ?
        1. Contributeur
          awk '$2 >= '"$Xmax"' { print $2,$3 }' fich.txt 
          ou
          awk -v X=$Xmax '$2 >= X { print $2,$3 }' fich.txt 
        2. merci une fois de plus...