Boucle unix (case)
Résolu
poireau
-
poireau -
poireau -
Bonjour a tous ,
je souhaiterai faire une boucle qui compte le nombre de ligne d'un fichier et qui reagisse en fonction du resultat.
pour commencer je fait ceci :
ensuite je voudrait dire :
si $i < 100 do cat A.txt B.txt
si $i>= 100 do cat A.txt C.txt
je bloque un peu...
je souhaiterai faire une boucle qui compte le nombre de ligne d'un fichier et qui reagisse en fonction du resultat.
pour commencer je fait ceci :
for i in $( cat B1010000.txt |wc -l ) do expr 100 - $i done
ensuite je voudrait dire :
si $i < 100 do cat A.txt B.txt
si $i>= 100 do cat A.txt C.txt
je bloque un peu...
3 réponses
Comme toujours ça marche !
merci jipicy !!
Je galere depuis un moment la dessus, et la réponse parait tellement simple...
Ptite question ca fait combien de temps que tu pratique le langage unix ??
J'aimerais bien arriver a la meme maitrise d'Unix un jour =)
++
merci jipicy !!
Je galere depuis un moment la dessus, et la réponse parait tellement simple...
Ptite question ca fait combien de temps que tu pratique le langage unix ??
J'aimerais bien arriver a la meme maitrise d'Unix un jour =)
++
Ah ben je m'aperçois que tu utilises -le que je connaissais pas =)
pour info pour les débutants :
-eq
est égal à
if [ "$a" -eq "$b" ]
-ne
n'est pas égal à
if [ "$a" -ne "$b" ]
-gt
est plus grand que
if ["$a" -gt "$b" ]
-ge
est plus grand ou égal à
if [ "$a" -ge "$b" ]
-lt
est plus petit que
if [ "$a" -lt "$b" ]
-le
est plus petit ou égal à
if [ "$a" -le "$b" ]
pour info pour les débutants :
-eq
est égal à
if [ "$a" -eq "$b" ]
-ne
n'est pas égal à
if [ "$a" -ne "$b" ]
-gt
est plus grand que
if ["$a" -gt "$b" ]
-ge
est plus grand ou égal à
if [ "$a" -ge "$b" ]
-lt
est plus petit que
if [ "$a" -lt "$b" ]
-le
est plus petit ou égal à
if [ "$a" -le "$b" ]