Zawartość
- Jak dodać obliczenia do skryptu Bash
- Arytmetyka zmiennoprzecinkowa w Bash
- Alternatywna składnia dla arytmetyki
Jak dodać obliczenia do skryptu Bash
Chociaż Bash jest językiem skryptowym, ma prawie wszystkie możliwości ogólnego języka programowania. Obejmuje to funkcje arytmetyczne. Istnieje wiele opcji składni, których można użyć do wywołania arytmetycznej oceny wyrażenia. Być może najbardziej czytelnym jest pozwolić Komenda. Na przykład:
niech m = (4 * 1024)
obliczy 4 razy 1024 i przypisze wynik do zmiennej „m”.
Możesz wydrukować wynik, dodając Echo komunikat:
echo $ m
Możesz także utworzyć plik zawierający polecenia Bash, w takim przypadku należy dodać wiersz u góry pliku, który określa program, który ma wykonać kod. Na przykład:
#! / bin / bash
zakładając, że plik wykonywalny Bash znajduje się w / bin / bash. Musisz także ustawić uprawnienia do pliku skryptu, aby był on wykonywalny. Zakładając, że nazwa pliku skryptu to skrypt1.sh, możesz ustawić uprawnienia do wykonywania pliku za pomocą polecenia:
chmod + x script1.sh
Następnie możesz wykonać to za pomocą polecenia:
./script1.sh
Dostępne operacje arytmetyczne są podobne do operacji w standardowych językach programowania, takich jak Java i C. Oprócz mnożenia, jak pokazano powyżej, używasz dodawania:
niech m = (5 + 5)
lub odejmowanie:
niech m = (10 - 2)
lub podział:
niech m = (10/2)
lub modulo (reszta po dzieleniu liczb całkowitych):
niech m = (11/2)
Kiedy operacja zostanie zastosowana do tej samej zmiennej, do której przypisany jest wynik, możesz użyć standardowych operatorów arytmetycznych skróconych przypisań, zwanych również operatorami przypisania złożonego. Na przykład, mamy:
((m + = 15))
co jest równoważne „m = m + 15”. Do odejmowania mamy:
((m- = 3))
co jest równoważne „m = m - 3”. Do podziału mamy:
((m / = 5))
co jest równoważne „m = m / 5”. A dla modulo mamy:
((m% = 10))
co jest równoważne „m = m% 10”.
Dodatkowo możesz użyć przyrost i ubytek operatorzy:
((m ++))
jest równoważne „m = m + 1”. I
((m--))
jest równoważne „m = m - 1”.
Arytmetyka zmiennoprzecinkowa w Bash
The pozwolić operator działa tylko dla arytmetyki liczb całkowitych. Do arytmetyki zmiennoprzecinkowej możesz użyć na przykład kalkulatora GNU bc, jak pokazano w tym przykładzie:
echo 32,0 + 1,4 | pne
Operator „potoku” | przekazuje wyrażenie arytmetyczne „32,0 + 1,4” do kalkulatora bc, który zwraca liczbę rzeczywistą. Polecenie echo wypisuje wynik na standardowe wyjście.
Alternatywna składnia dla arytmetyki
Do oceny wyrażenia arytmetycznego można użyć odwrotnych znaków (pojedynczych cudzysłowów), jak w tym przykładzie:
echo `expr $ m + 18`
Spowoduje to dodanie 18 do wartości zmiennej „m”, a następnie wydrukowanie wyniku.
Aby przypisać wartość obliczeniową do zmiennej, możesz użyć znaku równości bez spacji wokół niej:
m = `expr $ m + 18`
Innym sposobem oceny wyrażeń arytmetycznych jest użycie podwójnego nawiasu. Na przykład:
((m * = 4))
Spowoduje to czterokrotne zwiększenie wartości zmiennej „m”.
Oprócz obliczeń arytmetycznych, powłoka Bash zapewnia inne konstrukcje programistyczne, takie jak pętle for, pętle while, warunkowe oraz funkcje i podprogramy.