Simplifier une boucle - Shell/Batch - Programmation
Marsh Posté le 28-05-2009 à 18:04:37
Que veut dire "simplifier" ?
S'il s'agit d'un problème d'esthétisme, et que l'on voudrait avoir moins de lignes, ce serait possible en mettant le then derrière le test (mais un point virgule sera nécessaire) :
if [ $var = "A" ]; then |
Ou bien, on peut utiliser case esac :
case "$var" in |
Marsh Posté le 30-05-2009 à 20:48:01
| olivthill a écrit : S'il s'agit d'un problème d'esthétisme, et que l'on voudrait avoir moins de lignes, ce serait possible en mettant le then derrière le test (mais un point virgule sera nécessaire) :
|
[ $var = "A" ] && var_A=`expr $var_A + 1` |
Sinon il y a eval. C'est absolument illisible (surtout si tu reviens dans ton code 6 mois après) mais ça fonctionne
var=A |
| Tonio94 a écrit : Comment en KSH simplifier ce type de structure, pour éviter d'avoir une infinie de "if/elif" ? |
Ton titre marque "comment simplifier une boucle". Ferais-tu par hasard partie de ces programmeurs débiles qui parlent de la "boucle if" ???
Marsh Posté le 03-06-2009 à 13:41:16
Sve@r a écrit :
Sinon il y a eval. C'est absolument illisible (surtout si tu reviens dans ton code 6 mois après) mais ça fonctionne
|
Ça me plait bien ça merci ![]()
En fait à la base je cherchais plus une méthode dans le genre tableau de pointeurs en C ou structures, pour éviter d'avoir 20 lignes de "if/elif" mais je me doute bien qu'en shell ça risque d'être difficile de trouver un équivalent !
| Sve@r a écrit : Ton titre marque "comment simplifier une boucle". Ferais-tu par hasard partie de ces programmeurs débiles qui parlent de la "boucle if" ??? |
Là pas compris par contre, tu veux dire quoi ?
Marsh Posté le 05-06-2009 à 09:34:04
| Tonio94 a écrit : Là pas compris par contre, tu veux dire quoi ? |
Un "if" n'est pas une boucle. Une boucle c'est un while, un for ...
Marsh Posté le 05-06-2009 à 11:49:29
Je sais bien qu'un if n'est pas une boucle, mais pour une grande partie des gens c'est plus explicite que de dire "simplifier une structure de contrôle".
Voila tout ![]()
Marsh Posté le 28-05-2009 à 15:17:26
Salut,
Comment en KSH simplifier ce type de structure, pour éviter d'avoir une infinie de "if/elif" ?
Que j'aurais pu continuer à souhait d'ailleurs.
Merci d'avance !