6.1. Wykonywanie działań arytmetycznych w skrypcie powłoki
Problem
Podczas wykonywania kodu skryptu muszą zostać zrealizowane pewne nieskomplikowane operacje arytmetyczne.
Rozwiązanie
Do wyznaczania wartości wyrażenia arytmetycznego (bazującego na liczbach całkowitych) wykorzystuje się zapis $(( ))
lub instrukcję let
.
COUNT=$((COUNT + 5 + MAX * 2)) let COUNT+=5+MAX*2
Analiza
Jeśli definiowane przez programistę działania są operacjami na liczbach całkowitych, można wykorzystywać wszystkie standardowe operatory (właściwe dla języka C), zapisując je wewnątrz konstrukcji $(( ))
. Powłoka bash udostępnia jeden dodatkowy operator **
— odpowiada ona za podnoszenie liczby do określonej potęgi (np. wykonanie instrukcji MAX=$((2**8))
powoduje przypisanie zmiennej ...
Get Bash. Receptury now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.