Bonjour,
voici mon problème.
J'ai un fichier de 3 colonnes (et plusieurs lignes).
(PS: les N sont des noms et les V sont des valeurs(chiffres flotants), la première ligne n'existe pas je l'ai écrit pour me faire comprendre.)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Nom De Dm N1 v1 v1' N2 v2 v2' . . . etc
Je veux que mon programme parcours les colonnes de ce fichier tel que:
si De courante est supérieur à l'ensemble des De faire un traitement
pour cela je me suis dit que forcément De courante va être supérieur à max(De) du coup mon script est:
par contre je me suis bloquée comment écrire si mon De courant est égale à l'ensemble des De
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 maxDe=$(cut -d" " -f2 $InputFile | sort -n | sed '1,${$b;d}') #maximum de la deuxième colonne condition=$(awk -v var="$maxDe" '$2 > var {print "true"}' $InputFile) if [ "$Condition" = "true" ]; then .....
Je ne sais ni comment l'écrire ni comment la simplifier comme ce que j'ai faits avant.
Question1: Est-ce que, ce que j'ai faits au début est correcte logiquement (moi il me donne les résultats que je veux, mais je ne sais pas si c'est vraiment correct le fait de dire que : "si De courante est supérieur à l'ensemble des De faire un traitement" est équivalent à "si De courante est supérieur à max(De) faire un traitement"
Question2: je ne sais pas du tout comment me prendre pour le deuxième cas!!
Merci par avance pour votre aide
Partager