Lecture colonne jusqu'a variable

Résolu/Fermé
snow_frog Messages postés 216 Date d'inscription jeudi 5 février 2009 Statut Membre Dernière intervention 26 juin 2020 - 13 sept. 2011 à 14:58
snow_frog Messages postés 216 Date d'inscription jeudi 5 février 2009 Statut Membre Dernière intervention 26 juin 2020 - 13 sept. 2011 à 16:25
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
...



A voir également:

3 réponses

zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 407
13 sept. 2011 à 15:10
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
snow_frog Messages postés 216 Date d'inscription jeudi 5 février 2009 Statut Membre Dernière intervention 26 juin 2020 139
13 sept. 2011 à 15:21
merci bien!!

j'etais parti dans les while read line, test et Cie...
0
snow_frog Messages postés 216 Date d'inscription jeudi 5 février 2009 Statut Membre Dernière intervention 26 juin 2020 139
13 sept. 2011 à 16:19
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
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 407
13 sept. 2011 à 16:22
awk '$2 >= '"$Xmax"' { print $2,$3 }' fich.txt 
ou
awk -v X=$Xmax '$2 >= X { print $2,$3 }' fich.txt 
0
snow_frog Messages postés 216 Date d'inscription jeudi 5 février 2009 Statut Membre Dernière intervention 26 juin 2020 139
Modifié par snow_frog le 13/09/2011 à 16:26
merci une fois de plus...
0