Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

incrementation dans boucle

1 réponse
Avatar
Rindra
bonjour,
je suis en train d'apprendre l'arithmetique en shell script, comme ici:
http://cs.boisestate.edu/~amit/teaching/handouts/cs-unix/node123.html

Mon but est de faire quelquechose qui ressemble à:

n=3
for (...)
(...)
n=n+1
echo n
(...)

Mais en BASH
Je me suis rendu compte que parfois on utilise $((...)), ${..}, $[..]
dans les documentations que j'ai lu. Quel est la différence entre les trois?
Auriez-vous des liens qui expliquent un peu le sujet?
(ou alors si vous pouvez l'expliquer ici meme...)

1 réponse

Avatar
Stephane CHAZELAS
2008-06-25, 08:59(+03), Rindra:
je suis en train d'apprendre l'arithmetique en shell script, comme ici:
http://cs.boisestate.edu/~amit/teaching/handouts/cs-unix/node123.html

Mon but est de faire quelquechose qui ressemble à:

n=3
for (...)
(...)
n=n+1
echo n
(...)

Mais en BASH
Je me suis rendu compte que parfois on utilise $((...)), ${..}, $[..]
dans les documentations que j'ai lu. Quel est la différence entre les trois?
Auriez-vous des liens qui expliquent un peu le sujet?
(ou alors si vous pouvez l'expliquer ici meme...)



$[...] est deprecié, $((...)) est standard, ${...} n'a rien a
voir avec l'arithmetique. ${var} est la meme chose que $var, on
l'utilise dans ${var}something par exemple.

Utiliser des boucles ou de l'arithmetique en shell est souvent
la mauvaise facon de proceder. Il vaut mieux utiliser une/des
commandes qui font des boucles que de faire une boucle en shell
qui lance plusieurs commande par passe dans la boucle.

--
Stéphane