Wykonanie podstawowych operacji arytmetycznych
Proste operacje arytmetyczne, takie jak dodawanie, odejmowanie, podział i mnożenie, można wykonać za pomocą polecenia „BC”. Składnia do stosowania prostych operatorów binarnych w Bash za pomocą polecenia „BC” jest następująca.
Ubuntu@ubuntu: ~ $ echo "”| pne
W tej sekcji użyjemy polecenia „BC” do wykonywania prostych operacji arytmetycznych.
Ubuntu@ubuntu: ~ $ num1 = 2.35322 5
Ubuntu@ubuntu: ~ $ num2 = 1.223353
Ubuntu@ubuntu: ~ $ echo „$ num1+$ num2” | pne
3.576578
Ubuntu@ubuntu: ~ $ echo „$ num1- $ num2” | pne
1.129872
Ubuntu@ubuntu: ~ $ echo „$ num1*$ num2” | pne
2.878824
Ubuntu@ubuntu: ~ $ echo „$ num1/$ num2” | pne
1
W powyższym przykładzie, podczas wykonywania podziału, otrzymaliśmy wynik bez punktów dziesiętnych. Aby uzyskać wynik do punktów „n”, musimy ustawić wartość skali na „n”, jak pokazano w poniższym przykładzie.
Ubuntu@ubuntu: ~ $ echo „Scale = 10; $ num1/$ num2 ”| pne
1.9235862420
Alternatywnie możemy użyć flagi „-L” i polecenia „BC”, aby uzyskać wyjście dziesiętne.
Ubuntu@ubuntu: ~ $ echo „$ num1/$ num2” | BC -L
1.92358624207403750184
Polecenie „BC” można również użyć do wykonywania podziału modułu i obliczenia mocy liczby w skryptach Bash.
Ubuntu@ubuntu: ~ $ echo „10%4” | pne
2
Ubuntu@ubuntu: ~ $ echo „10^2” | pne
100
Wykonanie zaawansowanych operacji arytmetycznych
Do tej pory użyliśmy polecenia „BC” do wykonania podstawowych operacji arytmetycznych, takich jak dodawanie, odejmowanie, mnożenie itp., Teraz; W tej sekcji użyjemy polecenia „BC” do wykonania zaawansowanych operacji arytmetycznych. Omówimy, w jaki sposób możemy używać operatorów porównawczych, operatorów logicznych lub logicznych, zaawansowanych funkcji matematycznych i instrukcji warunkowych w Bash za pomocą polecenia „BC”.
Operatorzy porównawcze
Operatorzy porównawcze przyjmują dwie liczby, porównaj je, a następnie zwróć 1 Lub 0 w zależności od porównania. Jeśli porównanie jest prawdziwe, wówczas wynik jest Prawda (1); W przeciwnym razie tak jest Fałsz (0). Poniżej przedstawiono kilka przykładów operatorów porównawczych.
Poniżej przedstawiono kilka przykładów używanych operatorów porównawczych wraz z poleceniem „BC”.
Ubuntu@ubuntu: ~ $ echo „5 == 5” | pne
1
Ubuntu@ubuntu: ~ $ echo „4!= 4 ”| pne
0
Ubuntu@ubuntu: ~ $ echo „2> 5” | pne
0
Ubuntu@ubuntu: ~ $ echo „4<=4” | bc
1
Operatorzy logiczni
Operatorzy logiczne lub logiczne są używane w instrukcjach warunkowych do wykonywania niektórych logicznych decyzji. Poniżej znajdują się trzech podstawowych operatorów logicznych.
Poniższe przykłady ilustrują, w jaki sposób operatorzy logiczne są używane z poleceniem „BC”.
Ubuntu@ubuntu: ~ $ echo „-5 && 0” | pne
0
Ubuntu@ubuntu: ~ $ echo "-1 || 0 ”| pne
1
Ubuntu@ubuntu: ~ $ echo "! 0 ”| pne
1
Instrukcje warunkowe
Instrukcje warunkowe są używane do wykonywania określonych poleceń w zależności od stosowanego warunku. Stosowany warunek w instrukcji warunkowej obejmuje operatorów logicznych i porównawczych. Poniżej znajduje się przykład instrukcji warunkowych za pomocą polecenia „BC”.
Ubuntu@ubuntu: ~ $ a = 15
Ubuntu@ubuntu: ~ $ b = 20
Ubuntu@ubuntu: ~ $ echo 'if (a> b) wydrukuj „a jest większy” else print „b is większy” | BC -L
B jest większe
W powyższym przykładzie instrukcja sprawdza, czy A jest większe niż B, czy nie. Jeśli A jest większe niż B, wydrukuje „A jest większy”; W przeciwnym razie wydrukuje „B jest większe.”W powyższym przykładzie możemy zastosować dowolny warunek za pomocą operatorów boolean i porównawczych.
Funkcje matematyczne
Polecenie „BC” zapewnia również wbudowane funkcje matematyczne, których możemy użyć bez ich definiowania. Poniżej znajdują się niektóre podstawowe funkcje używane z poleceniem „BC” w Bash.
Funkcje tych można użyć z poleceniem „BC”, jak pokazano w poniższych przykładach.
Ubuntu@ubuntu: ~ $ pi = 3.1415
Ubuntu@ubuntu: ~ $ echo „s ($ pi/2)” | BC -L
1
Ubuntu@ubuntu: ~ $ echo „c ($ pi/2)” | BC -L
0
Ubuntu@ubuntu: ~ $ echo „a (1)” | BC -L
0.7854
Krajowy pierwiastek liczby można obliczyć w Bash za pomocą polecenia „BC”, jak pokazano na poniższym rysunku.
Ubuntu@ubuntu: ~ $ echo „sqrt (4)” | BC -L
2
Próbując obliczyć pierwiastek kwadratowy liczby ujemnej, powłoka rzuci błąd środowiska wykonawczego.
Ubuntu@ubuntu: ~ $ echo „sqrt (-2)” | BC -L
Błąd czasu wykonywania (func = (main), adr = 4): pierwiastek kwadratowy liczby ujemnej
Logarytm naturalny liczby można obliczyć w Bash za pomocą polecenia „BC” w następujący sposób.
Ubuntu@ubuntu: ~ $ echo „l (2)” | BC -L
.69314718055994530941
Wniosek
Podczas pisania skryptów automatyzacji w Bash czasami potrzebujemy zaawansowanych funkcji matematycznych i operatorów logicznych do wykonywania poleceń. Polecenie „BC” zapewnia wiele zaawansowanych funkcji matematycznych i operatorów do wykonywania obliczeń arytmetycznych na wysokim poziomie. Ten samouczek omówiono przy użyciu polecenia „BC” do wykonywania zaawansowanych operacji arytmetycznych w Bash.