Suche…


Syntax

  • $ ((EXPRESSION)) - Wertet den Ausdruck aus und gibt sein Ergebnis zurück.

  • Ausdruck EXPRESSION - Druckt das Ergebnis von EXPRESSION in stdout aus.

Parameter

Parameter Einzelheiten
AUSDRUCK Ausdruck zu bewerten

Bemerkungen

Zwischen jedem Ausdruck (oder Zeichen) des Ausdrucks ist ein Leerzeichen ("") erforderlich. "1 + 2" funktioniert nicht, aber "1 + 2" funktioniert.

Arithmetischer Befehl

  • let
    let num=1+2
    let num="1+2"
    let 'num= 1 + 2'
    let num=1 num+=2 

Sie benötigen Anführungszeichen, wenn Leerzeichen oder Globbing-Zeichen vorhanden sind. Also werden die Fehler bekommen:

   let num = 1 + 2    #wrong
   let 'num = 1 + 2'  #right
   let a[1] = 1 + 1   #wrong
   let 'a[1] = 1 + 1' #right
  • (( ))
  ((a=$a+1))     #add 1 to a
  ((a = a + 1))  #like above
  ((a += 1))     #like above

Wir können (()) in if . Einige Beispiele:

if (( a > 1 )); then echo "a is greater than 1"; fi 

Die Ausgabe von (()) kann einer Variablen zugewiesen werden:

result=$((a + 1))

Oder direkt in der Ausgabe verwendet:

echo "The result of a + 1 is $((a + 1))"

Einfache Arithmetik mit (())

#!/bin/bash
echo $(( 1 + 2 ))

Ausgabe: 3

# Using variables
#!/bin/bash
var1=4
var2=5
((output=$var1 * $var2))
printf "%d\n" "$output"

Ausgabe: 20

Einfache Arithmetik mit Ausdruck

#!/bin/bash
expr 1 + 2

Ausgabe: 3



Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow