Trouver min/max shell

Fermé
angou - 18 févr. 2008 à 15:15
 angou - 19 févr. 2008 à 09:48
Bonjour,

Depuis une interface shell je souhaiterais lire un fichier (3colonnes lon /lat /valeur) et trouver min et max de la troisieme colonne. Puis afficher ces 2 valeurs min et max (je débute je ne connais pas la syntaxe) Merci!
A voir également:

7 réponses

jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897
18 févr. 2008 à 17:02
Salut vous deux,

Faudrait peut être nous afficher un bout de ton fichier histoire qu'on puisse voir le délimiteur de champs, non ?

La syntaxe de "Darkito" est nickel, et avec le bon délimiteur, ça devrait le faire mieux encore ;-))
min=$(cut -d "délimiteur" -f3 Tonfichier | sort -n | head -1)
max=$(cut -d "délimiteur" -f3 Tonfichier | sort -n -r | head -1)
echo $min $max
:-))
1
merci a vous 2!
1
Darkito Messages postés 1191 Date d'inscription vendredi 7 décembre 2007 Statut Membre Dernière intervention 26 mai 2010 545
18 févr. 2008 à 15:21
Bonjour

min=$(cut -f3 $tonfichier | sort -n | head -1)
max=$(cut -f3 $tonfichier | sort -n -r | head -1)

echo "$min $max"


Il doit y avoir plus "propre" mais ça doit fonctionner.
Il n'y a plus qu'à attendre que jipicy passe dans le coin...
0
Merci mais ce code me sort 2 lignes dont la 3eme colonne ne corraspond pas au min et max. Pourrais tu m'en dire plus ou bien faut il attendre el maestro jipicy
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Darkito Messages postés 1191 Date d'inscription vendredi 7 décembre 2007 Statut Membre Dernière intervention 26 mai 2010 545
18 févr. 2008 à 16:54
Je t'ai mis la syntaxe pour un script sh.
Si tu veux le lancer directement dans le shell.

set min=`cut -f3 Tonfichier | sort -n | head -1`
set max=`cut -f3 Tonfichier | sort -n -r | head -1`
echo $min $max
0
Rebonsoir , voila a quoi ressemble mon fichier (3 colonnes sur 16500 lignes)

-4.950000 41.05000 0.000000
-4.950000 41.15000 0.000000
-4.950000 41.25000 0.000000
-4.950000 41.35000 0.000000

Merci encore
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897
18 févr. 2008 à 18:00
[tmpfs]$ cat angou
-4.950000 41.05000 0.007000
-4.950000 41.15000 0.000400
-4.950000 41.25000 0.000090
-4.950000 41.35000 0.800000
-4.950000 41.05000 3.000000
-4.950000 41.15000 0.000000
-4.950000 41.25000 0.050000
-4.950000 41.35000 1.000000

[tmpfs]$ cut -d" " -f3 angou | sort -n | sed '1,${1b;$b;d}'
0.000000
3.000000
;-))
0