web-dev-qa-db-fra.com

Erreur de syntaxe: opérande attendu (le jeton d'erreur est "+")

J'écris un script en bash et j'obtiens cette erreur:

./P4.1: line 10: +: syntax error: operand expected (error token is "+")

Et voici mon code:

#!/bin/bash
read string
echo $string >| temp
num1= cut -d" " -f1 temp
num2= cut -d" " -f2 temp
num3= cut -d" " -f3 temp
while [ $num1 -gt $num3 ]
do
        echo $num1
        num1=$[$num1+$num2]
done

Qu'est-ce qui ne va pas et comment puis-je résoudre le problème?.

11
shoham

Combinaison de ceving et de Tomek:

#!/bin/bash
read num1 num2 num3
while [ $num1 -lt $num3 ]
do
    echo $num1
    num1=$((num1+num2))
done
9
Blue Ice

Utilisez des parenthèses rondes pour les calculs numériques:

num1=$((num1 + num2))
4
ceving
#!/bin/bash
read string
echo "${string}" >| temp
num1= cut -d" " -f1 temp
num2= cut -d" " -f2 temp
num3= cut -d" " -f3 temp
while [ "${num1}" -gt "${num3}" ]
do
    echo "${num1}"
    num1=$(expr "${num1}" + 1)
done

de plus, citez et calez vos variables. :RÉ

0
petrus4