he me revoi la ...
dans le meme contexte que taleur je cherche a tester une variable pour savoir si elle est numerique ou pas dans un script shell cela va de soit ?? svouplai !!
he me revoi la ...
dans le meme contexte que taleur je cherche a tester une variable pour savoir si elle est numerique ou pas dans un script shell cela va de soit ?? svouplai !!
pour faire simple remplace tous les chiffres dans le comptage des caracteres du contenu de la variable $variable et compare a 1
( > a 1) puisque 0 num
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 if [ `echo $variable | sed -e "s/[0-9]//g" | wc -c` -gt 1 ] ; then echo "not only numeric" fi
ca donne ca :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 pur31:~/Documents # variable=34 pur31:~/Documents # echo $variable | sed -e "s/[0-9]//g" | wc -c 1 pur31:~/Documents # variable=3aa4 pur31:~/Documents # echo $variable | sed -e "s/[0-9]//g" | wc -c 3 pur31:~/Documents # pur31:~/Documents # pur31:~/Documents # if [ `echo $variable | sed -e "s/[0-9]//g" | wc -c` -gt 1 ] ; then > echo "not only numeric" > fi not only numeric pur31:~/Documents #
voila pourquoi il faut comparer ( > a 1 ) et pas a 0
atttention a un detail toutefois cette methode rejete aussi les blocs de plusieurs nombres comme par exemple :
variable="44 55 0" sera rejete
merci beaucoup
ca me va tres bien
a pliche
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager