Obliczanie podziału i reszty w Bash
- 2725
- 297
- Igor Madej
Bash to potężny interfejs wiersza poleceń i język skryptowy, który oferuje szeroką gamę operacji matematycznych, w tym podział i resztę. Podział i pozostałe są podstawowymi operacją stosowanymi w różnych zastosowaniach programowania i matematycznych. W tym artykule omówiono sposób wykonywania działalności podziału i resztek w Bash i ich użyciu.
Oblicz podział w Bash
Dział jest operacją matematyczną, która polega na podzieleniu jednej liczby przez drugą. W Bash podział można wykonać za pomocą /
operator. Oto przykład:
123 | $ echo $ ((10/3)) #output: 3 |
W powyższym przykładzie użyliśmy $ (())
składnia do wykonania podziału liczb całkowitych 10 na 3. Rezultatem jest wartość liczb całkowita 3.
Jeśli chcemy wykonać podział na zmiennoprzecinkowy, możemy użyć polecenia BC, które jest kalkulatorem wiersza poleceń, który obsługuje arytmetykę arbitralną. Oto przykład:
$ echo "Scale = 2; 10/3" | BC #output: 3.33123 | $ echo "Scale = 2; 10/3" | BC #output: 3.33 |
W powyższym przykładzie użyliśmy polecenia ECHO, aby wysłać wyrażenie matematyczne 10 /3 do polecenia BC, które następnie zwróciło wynik z dwoma miejscami dziesiętnymi.
Resztę w Bash
Pozostała część jest operacją matematyczną, która obejmuje znalezienie reszty, gdy jedna liczba jest podzielona przez inną. W BASH pozostała część można wykonać za pomocą operatora %. Oto przykład:
$ echo $ ((10 % 3)) #output: 1123 | $ echo $ ((10 % 3)) #output: 1 |
W powyższym przykładzie użyliśmy $ (())
składnia do znalezienia pozostałej części, gdy 10 jest podzielone przez 3. Rezultatem jest wartość liczb całkowita 1.
Jeśli chcemy wykonywać obliczenia resztek zmiennoprzecinkowego, możemy użyć polecenia BC z operatorem %. Oto przykład:
Skala $ echo "= 2; 10.5 % 3 "| BC #output: 1.50123 | Skala $ echo "= 2; 10.5 % 3 "| BC #output: 1.50 |
W powyższym przykładzie użyliśmy polecenia Echo, aby wysłać wyrażenie matematyczne 10.5 % 3 do polecenia BC, które następnie zwróciło resztę z dwoma miejscami dziesiętnymi.
Obsługa podziału przez 0 błędów
Jedną ważną rzeczą, o której należy pamiętać podczas wykonywania podziału w Bash, jest możliwość podziału przez zerowe błędy. Po podzieleniu przez zero Bash rzuci komunikat o błędzie:
$ echo $ ((10/0)) #output: Bash: Division by 0 (Token błędu to „0”)123 | $ echo $ ((10/0)) #output: Bash: Division by 0 (Token błędu to „0”) |
Aby uniknąć takich błędów, możemy użyć instrukcji warunkowych, aby sprawdzić wartość dzieliny przed wykonaniem operacji podziału. Oto przykład:
#!/bin/bash divisor = 0, jeśli [$ divisor -eq 0]; wtedy echo „nie może podzielić przez zero.„Else Echo $ ((10 / Divisor)) FI123456789 | #!/bin/bash divisor = 0, jeśli [$ divisor -eq 0]; wtedy echo „nie może podzielić przez zero.„Else Echo $ ((10 / Divisor)) FI |
W powyższym przykładzie ustawiamy zmienną Divisor na 0, a następnie użyliśmy instrukcji IF, aby sprawdzić, czy wartość dzielnicy wynosi zero. Jeśli tak, drukujemy komunikat o błędzie. W przeciwnym razie wykonujemy operację podziału.
Wniosek
W tym artykule omówiliśmy, jak wykonywać działy i pozostałe operacje w Bash. Widzieliśmy, jak wykonywać podział liczb całkowitych i zmiennoprzecinkowych oraz resztki za pomocą operatorów / i %. Widzieliśmy również, jak obsługiwać podział przez błędy zerowe za pomocą instrukcji warunkowych. Opanując te podstawowe operacje, możesz zacząć budować bardziej złożone skrypty bash, które obejmują obliczenia matematyczne.
- « Jak obliczyć resztę (%) podziału w BASH
- Zaawansowane techniki scenariuszy dla administratorów Linuksa »