$ x=20
$ y=10
$ echo $x
20
$ echo $y
10
$ expr 20 + 10
30
$ expr x + y
expr: non-numeric argument
Η expr ειναι δηλαδη μονο για αριθμους?Αν θελουμε να προσθεσουμε μεταβλητες υπαρχει αντιστοιχη εντολη??
Φόρουμ
Δώσε αστέρια!
- Συνδεθείτε ή εγγραφείτε για να σχολιάσετε
Σχόλια
δοκίμασε την τελευταία γραμμή ως εξής:
expr $x + $y
όπως κ στο echo, θέλουν δολάριο μπροστά από το όνομα όταν "αναφέρεσαι" σε αυτές.
Γενικά, αριστερά του = είναι χωρίς δολάριο, πχ:
x = 20
Ενώ δεξιά του = είναι με δολάριο:
z = 30 + $x
μπορεις αν θες να ορισεις μια μεταβλητη z ιση με ενα expr (+-/*) δυο ή περισοτερρων ηδη δηλομενων μεταβλητων, πρεπει να βαλεις το expr σε αυτακια.
πχ:
x=5
y=90
k=56
z=`expr $x + $y + $k`
echo $z
151
θα πρεπει δηλαδη να βαλεις το ολο expr μεσα σε αυτακια (πανω απο το tab) και τις μεταβλητες με το $ ωστε να οριστουν με τις τιμες τους.