J’ai un petit problème avec cet extrait de code suivant et je ne sais pas pourquoi. L’erreur donnée est (ligne indiquée):
* 2: erreur de syntaxe: opérande attendu (le jeton d’erreur est “* 2”)
while [[ $numberServers -gt $newindex ]]; do serverPort=$((9001+$(($newindex*2)))) <--- This line clientPort=$(($serverPort+1)) newindex=$(($newindex+1)) localhostport=$((serverPort-2)) string=$(($string,localhost:$(($serverPort-2)))) ...
Toute aide serait grandement appréciée.
Le problème est que la variable newindex
est vide, donc l’expression est devenue:
$((9001+$((*2))))
vérifiez l’initialisation de newindex
.
Exemple:
$ echo $((9001+$(($newindex*2)))) bash: *2: syntax error: operand expected (error token is "*2") $ newindex=4 $ echo $((9001+$(($newindex*2)))) 9009