Ako používať kalkulačku "bc" v skriptoch

Program Linux bc môže byť použitý ako pohodlná stolová kalkulačka alebo ako matematický skriptovací jazyk. Je to tak jednoduché ako volanie príkazu bc cez terminál.

Okrem pomôcky bc obsahuje shell Bash niekoľko ďalších metód na vykonávanie aritmetických operácií .

Poznámka: Program bc sa tiež nazýva základná kalkulačka alebo bench kalkulačka.

bc Syntax príkazov

Syntax príkazu bc je podobný programovaciemu jazyku C a podporujú sa rôzne operátory, ako napríklad pridanie, odčítanie, plus alebo mínus a ďalšie.

Jedná sa o rôzne prepínače dostupné pomocou príkazu bc:

Viac podrobností o tom, ako môžete použiť základnú kalkulačku, nájdete v tejto Príručke bc.

Príklad príkazu bc

Základnú kalkulačku môžete použiť v termináli jednoduchým zadaním bc , po ktorom môžete napísať pravidelné matematické výrazy, ako je toto:

4 + 3

... získať takýto výsledok:

7

Pri opakovanom vykonávaní sérií výpočtov je rozumné používať kalkulačku bc ako súčasť skriptu. Najjednoduchšia forma takého skriptu by vyzerala takto:

#! / bin / bash echo "6,5 / 2,7" bc

Prvý riadok je len cesta k spustiteľnému súboru, ktorý spúšťa tento skript.

Druhý riadok obsahuje dva príkazy. Príkaz echo generuje reťazec obsahujúci matematický výraz obsiahnutý v jednoduchých úvodzovkách (6.5 v tomto príklade rozdelených na 2,7). Operátor rúr (|) prechádza tento reťazec ako argument do programu bc. Výstup programu bc sa potom zobrazí na príkazovom riadku.

Ak chcete spustiť tento skript, otvorte okno terminálu a prejdite do adresára, kde sa nachádza skript. Predpokladáme, že súbor skriptu sa nazýva bc_script.sh . Skontrolujte, či je súbor spustiteľný pomocou príkazu chmod :

chmod 755 bc_script.sh

Potom zadáte:

./bc_script.sh

Výsledok by bol nasledovný:

2

Ak chcete zobraziť 3 desatinné miesta, pretože skutočná odpoveď je 2.407407 ..., použite vyhlásenie o stupnici v rámci reťazca vymedzeného jednoduchými úvodzovkami:

#! / bin / bash echo 'stupnica = 3; 6,5 / 2,7 ' bc

Pre lepšiu čitateľnosť môže byť riadok s výpočtami prepísaný na viacerých riadkoch. Ak chcete poraziť príkazový riadok do viacerých riadkov, môžete na koniec riadku položiť spätné lomítko:

echo 'scale = 3; var1 = 6,5 / 2,7; var1 '\ | bc

Ak chcete zahrnúť argumenty príkazového riadku vo vašich výpočtoch bc, musíte zmeniť jednotlivé úvodzovky do dvojitých úvodzoviek tak, aby symboly parametrov príkazového riadku boli interpretované pomocou shell Bash:

echo "scale = 3; var1 = 6,5 / 2,7; var2 = 14 * var1; var2 * = $ 1; var2" \ | bc

Prvý argument príkazového riadku sa pristupuje pomocou premennej "$ 1", druhý argument používa "$ 2", atď.

Teraz môžete napísať vlastné prispôsobené aritmetické funkcie v samostatných Bash skriptoch a zavolať ich z iných skriptov.

Napríklad, ak skript1 obsahuje:

#! / bin / bash echo "stupnica = 3; var1 = 6,5 / 2,7; var2 = 14 * var1; var2 * = $ 1; var2" \ | bc

... a script2 obsahuje

#! / bin / bash var0 = "100" echo "var0: $ var0" Funkcia fun1 {echo "scale = 3; var1 = 10; var2 = var1 * $ var0; bc} fres = $ (zábava1) echo "fres:" $ fres var10 = $ (./ script1 $ fres); echo "var10:" $ var10;

... potom vykonanie skriptu2 vyvolá skript1 pomocou premennej $ fres vypočítanej v script2 ako parameter.