Kiedy zachodzi potrzeba przeprowadzenia jakichś obliczeń można skorzystać z mechanizmu interpretacji wyrażeń arytmetycznych wbudowanego w Basha.
Ostrzeżenie
Obliczenia w Bash dokonywane są TYLKO na liczbach całkowitych, nie ma przeprowadzanej kontroli przepełnienia zmiennych (ang. overflow). Jeżeli problem jaki rozwiązujesz wymaga operacji na liczbach zmiennoprzecinkowych to nie powinieneś rozwiązywac tego problemu w Bashu.
Podpowiedź
Wprawdzie jest możliwość napisania programu działającego na liczbach innych niż całkowite, ale nie jest to wydajne rozwiązanie. Przykłady takich działań są do znalezienia na StackOverflow.
Składnia
$((wyrażenie))
lub
$[wyrażenie]
Przykład:
#!/bin/bash
echo $((8/2))
wynik=$[4*5/2]
echo "$wynik"
Przykład
#!/bin/bash
for pliki_html in `ls *.html` ; do
numer=$((numer+1))
echo "$numer. "
echo $pliki_html
done
Wynikiem działania powyższego skryptu będzie ponumerowana lista wszystkich plików o rozszerzeniu .html, znajdujących się w bieżącym katalogu.
Podpowiedź
Do przeprowadzenia obliczeń można też skorzystać z polecenia let.