wake-up-neo.net

Wert der Variablen um 1 erhöhen (Shell-Programmierung)

Ich bin ein Anfänger der Shell-Programmierung und es klingt wie eine sehr dumme Frage, aber ich kann den Variablenwert nicht um 1 erhöhen. Ich habe Tutorial betrachtet, aber es zeigt nur, wie man 2 Variablen zusammenfügt

Ich habe die folgenden Methoden ausprobiert, aber es funktioniert nicht

i=0

$i=$i+1 # doesnt work , command not found

echo "$i"

$i='expr $i+1' # doesnt work , command not found

echo "$i"

$i++ # doesnt work , command not found

echo "$i"

Wie kann ich den Wert einer Variablen um 1 erhöhen?

8
Computernerd

Sie können dies versuchen:

i=0
i=$((i+1))
27
Gabriel L.

Es gibt mehr als eine Möglichkeit, eine Variable in bash zu erhöhen, aber das, was Sie versucht haben, ist nicht korrekt.

Sie können zum Beispiel eine arithmetische Erweiterung verwenden:

i=$((i+1))

oder nur:

((i=i+1))

oder:

((i+=1))

oder auch:

((i++))

Oder Sie können let verwenden:

let "i=i+1"

oder nur:

let "i+=1"

oder auch:

let "i++"

Siehe auch: http://tldp.org/LDP/abs/html/dblparens.html .

5
zahid

Die Art und Weise wie man expr benutzt:

i=0
i=`expr $i + 1`

der Weg, um i ++ zu verwenden

((i++)); echo $i;

Getestet in Gnu Bash

4
BMW

sie können bc verwenden, da dies auch für Floats möglich ist

var=$(echo "1+2"|bc)
0
kurumi

Dies sind die Methoden, die ich kenne:

[email protected] ~$ i=10; echo $i;
10
[email protected] ~$ ((i+=1)); echo $i;
11
[email protected] ~$ ((i=i+1)); echo $i;
12
[email protected] ~$ i=`expr $i + 1`; echo $i;
13

Beachten Sie die Leerzeichen im letzten Beispiel. Beachten Sie auch, dass nur $i verwendet wird.

0
Juan Ramirez