+ | somma |
- | sottrazione |
\* | moltiplicazione |
/ | divisione |
** | esponenzia il primo numero al secondo |
% | modulo → ritorna il resto di una divisione |
esempio:
#!/bin/sh
X=10
Y=4
Z=7.3
Q=4.22
R1=`expr $X - $Y` uso di expr tra apici gravi
R2=$((X-Y)) uso le doppie parentesi
let "R3 = X - Y" uso di let
M=`echo "$Z + $Q" | bc` uso di bc
echo "risultato di expr: "$R1
echo "risultato delle dopie parentesi: "$R2
echo "risultato di let: "$R3
echo "risultato di bc: "$M
-eq | equivalenza | == |
-ne | disuguaglianza | != |
-gt | maggiore | > |
-ge | maggiore o uguale | >= |
-lt | minore | <= |
-le | minore o uguale | <= |
-n | verifica che la stringa sia di lunghezza maggiore di zero |
-z | verifica che la stringa abbia lunghezza zero |
= | verifica che due stringhe siano uguali |
!= | verifica che due stringhe siano diverse |
< | verifica che la prima stringa sia lessicograficamente minore della seconda |
> | verifica che la prima stringa sia lessicograficamente maggiore della seconda |
! | operatore di negazione, inverte il valore logico dell'espressione al quale viene applicato. !(vero) = falso |
-a | operatore AND, ritorna vero se entrambi gli argomenti passati lo sono. |
-o | operatore OR, ritorna vero se almeno uno degli argomenti lo é. |
&& | operatore AND, ritorna vero se entrambi gli argomenti passati lo sono. |
|| | operatore OR, ritorna vero se almeno uno degli argomenti lo é. |