Slik bruker du "bc"-kalkulatoren i skript

Linux f.Kr programmet fungerer som en praktisk kalkulator på skrivebordet eller som et matematisk skriptspråk. Det er like enkelt som å ringe f.Krkommando gjennom en terminal. Foruten bc-verktøyet, gir de fleste skjell andre metoder som utføre aritmetiske operasjoner.

BC kommandosyntaks

De syntaks for bc-kommandoen ligner på C-programmeringsspråket.

Kommandoen støtter flere brytere:

  • -h, --hjelp: Skriver ut denne bruken og avslutter.
  • -Jeg, --interaktiv: Tvinger frem interaktiv modus.
  • -l, --mathlib: Bruker de forhåndsdefinerte matematiske rutinene.
  • -q, --stille: Skriver ikke ut det første banneret.
  • -s, --standard: Ikke-standard bc-konstruksjoner er feil.
  • -w, --varsle: Advarer om ikke-standard bc-konstruksjoner.
  • -v, --versjon: Skriver ut versjonsinformasjon og avslutter.

Se gjennom manpage for f.Kr for en detaljert oversikt over kommandoens bruk.

Eksempel på BC-kommando

Den grunnleggende kalkulatoren kan brukes i en terminal ved å gå inn f.Kr, hvoretter du kan skrive vanlige matematiske uttrykk som dette:

4+3

for å få et resultat som dette:

7
Linux bc kommando

Bruk bc i et skript

Når du utfører en rekke beregninger gjentatte ganger, er det fornuftig å bruke bc-kalkulatoren som en del av et skript. Den enkleste formen for et slikt skript vil se omtrent slik ut:

#!/bin/bash
ekko '6.5 / 2.7' | f.Kr

Den første linjen er banen til den kjørbare filen som kjører dette skriptet. I dette tilfellet, Bash-miljøet.

Den andre linjen inneholder to kommandoer. De ekko kommandoen genererer en streng som inneholder det matematiske uttrykket i enkle anførselstegn (6,5 delt på 2,7, i dette eksemplet). De rør operatoren (|) sender denne strengen som et argument til bc-programmet. Utdataene fra bc-programmet vises deretter på kommandolinjen.

Utvid ytelsen til bc

For å vise tre desimaler, siden det sanne svaret er 2,407407..., bruk en skalasetning inne i strengen avgrenset med enkle anførselstegn:

#!/bin/bash
echo 'scale=3; 6,5/2,7' | f.Kr
Linux bc med skala

For bedre lesbarhet kan linjen med beregningene brytes over flere linjer. Sett en omvendt skråstrek på slutten av linjen:

echo 'scale=3; 
var1 = 6,5 / 2,7;
var1 ' \
| f.Kr

Bruk argumenter med bc

For å inkludere argumenter i bc-beregninger, endre de enkle anførselstegnene til doble anførselstegn slik at kommandolinjeparametersymbolene tolkes av skallet:

ekko "skala=3; 
var1 = 6,5 / 2,7;
var2 = 14 * var1;
var2 *= var1;
var2 " \
| f.Kr

Det første kommandolinjeargumentet åpnes ved å bruke variabelen var1, bruker det andre argumentet var2.

Linux bc med variabler

For eksempel hvis manus 1 inneholder:

#!/bin/bash
ekko "skala=3;
var1 = 6,5 / 2,7;
var2 = 14 * var1;
var2 *= var1;
var2 " \
| f.Kr

og skript 2 inneholder:

#!/bin/bash 
var0="100"
ekko "var0: $var0"
funksjon moro1
{
ekko "skala=3;
var1 = 10;
var2 = var1 * $var0;
var2 " \
| f.Kr
}
fres=$(moro1)
echo "fres: "$fres
var10=$(./script1 $fres);
echo "var10: "$var10;

deretter utfører skript 2 vil påberope seg manus 1 ved hjelp av en variabel $fres regnet inn skript 2 som en parameter.

Linux bc med to skript