Jak používat kalkulačku "bc" v skriptech

Program Linux bc může být použit jako pohodlná stolní kalkulačka nebo jako matematický skriptovací jazyk. Je to stejně snadné jako volání příkazu bc přes terminál.

Kromě nástroje bc poskytuje shell Bash několik dalších metod pro provádění aritmetických operací .

Poznámka: Program bc se také nazývá základní kalkulačka nebo kalkulačka laku.

bc Syntaxe příkazů

Syntaxe příkazu bc je podobná programovacímu jazyku C a podporuje se řada operátorů, jako je přírůstek, odečtení, plus nebo mínus a další.

Jedná se o různé přepínače dostupné pomocí příkazu bc:

Další podrobnosti o tom, jak můžete použít základní kalkulačku, naleznete v této příručce bc.

Příkaz příkazu bc

Základní kalkulačka může být použita v terminálu jednoduchým zadáním příkazu bc , po kterém můžete zadat pravidelné matematické výrazy, jako je tato:

4 + 3

... získat takový výsledek:

7

Při provádění řady výpočtů opakovaně má smysl používat kalkulačku bc jako součást skriptu. Nejjednodušší forma takového skriptu by vypadala takto:

#! / bin / bash echo '6,5 / 2,7' před naším letopočtem

První řádek je pouze cesta spustitelného souboru, který spouští tento skript.

Druhý řádek obsahuje dva příkazy. Příkaz echo generuje řetězec obsahující matematický výraz obsažený v jednotlivých údajích (v tomto příkladu 6.5 děleno 2.7). Operátor potrubí (|) předá tento řetězec jako argument k programu bc. Výstup programu bc se pak zobrazí na příkazovém řádku.

Chcete-li spustit tento skript, otevřete okno terminálu a přejděte do adresáře, kde je umístěn skript. Předpokládejme, že soubor skriptu se nazývá bc_script.sh . Ujistěte se, že soubor je možné spustit pomocí příkazu chmod :

chmod 755 bc_script.sh

Pak byste zadali:

./bc_script.sh

Výsledkem bude následující:

2

Chcete-li zobrazit 3 desetinná místa, protože skutečná odpověď je 2.407407 ..., použijte příkaz uvnitř řetězce vymezený jednoduchými uvozovkami:

#! / bin / bash echo 'stupnice = 3; 6,5 / 2,7 ' před naším letopočtem

Pro lepší čitelnost lze linku s výpočty přepisovat na více řádků. Chcete-li přerušit příkazovou řádku do několika řádků, můžete na konci řádku dát zpětné lomítko:

echo 'scale = 3; var1 = 6,5 / 2,7; var1 '\ | před naším letopočtem

Chcete-li zahrnout argumenty příkazového řádku do vašich výpočtů bc, musíte změnit jednotlivé úryvky do dvojitých uvozovek tak, aby symboly parametrických příkazů byly interpretovány pomocí shell Bash:

echo "měřítko = 3; var1 = 6.5 / 2.7; var2 = 14 * var1; var2 * = $ 1; var2" \ | před naším letopočtem

První argument příkazového řádku je zpřístupněn pomocí proměnné "$ 1", druhý argument používá "$ 2" atd.

Nyní můžete napsat vlastní přizpůsobené aritmetické funkce v samostatných Bash skriptech a volat je z jiných skriptů.

Například pokud script1 obsahuje:

#! / bin / bash echo "měřítko = 3; var1 = 6.5 / 2.7; var2 = 14 var1; var2 * = $ 1; var2" \ | před naším letopočtem

... a script2 obsahuje

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

... pak provede spuštění script2 vyvolá script1 pomocí proměnné $ fres vypočítané v script2 jako parametru.