Kiel Uzi la "Bc" Kalkulilon en Skriptoj

La Linuksa programo bc povas esti uzata kiel oportuna labortabla kalkulilo aŭ kiel matematika skripta lingvo. Estas tiel facila kiel alvoki la bc- komandon per fina stacio.

Krom la bc utileco, la Bash-ŝelo provizas kelkajn aliajn metodojn por plenumi aritmetikajn operaciojn .

Noto: La programo bc ankaŭ estas nomita baza kalkulilo aŭ bankkalkulilo.

bc Komando-sintakso

La sintakso por la komando bc estas simila al la lingvo de programado C, kaj diversaj operacioj estas subtenataj, kiel aldono, subtraho, pli aŭ malpli, kaj pli.

Ĉi tiuj estas la diversaj ŝaltiloj haveblaj kun la komando bc:

Vidu ĉi bc Command Command por pliaj detaloj pri kiel vi povas uzi la bazan kalkulilon.

bc Komando Ekzemplo

La baza kalkulilo povas esti uzata en fina stacio simple enirante bc , post kiu vi povas tajpu regulajn matematikajn esprimojn kiel ĉi:

4 + 3

... akiri rezulton kiel ĉi:

7

Kiam ĝi realigas serion da kalkuloj ree, ĝi havas sencon uzi la kalkulilon de bc kiel parto de skripto. La plej simpla formo de tia skripto aspektus io simila al ĉi tio:

#! / bin / bash echo '6.5 / 2.7' bc

La unua linio estas nur la vojo de la ejecutable, kiu kuras ĉi tiun skripton.

La dua linio enhavas du komandojn. La eĥo- komando generas ĉenon enhavanta la matematikan esprimon enhavitan en unuopa (citaĵoj) (6.5 dividita per 2.7, en ĉi tiu ekzemplo). La pipa operatoro (|) pasas ĉi tiun ĉenon kiel argumenton al la programo bc. La eligo de la programo bc tiam montras en la komandlinio.

Por ekzekuti ĉi tiun skripton, malfermu fina fenestron kaj navigu al la dosierujo kie troviĝas la skripto. Ni supozos, ke la skripta dosiero nomas bc_script.sh . Certigu, ke la dosiero estas ezecutable uzante la komandon chmod :

chmod 755 bc_script.sh

Tiam vi enirus:

./bc_script.sh

La rezulto estus la sekvaj:

2

Por montri 3 decimalajn lokojn ekde la vera respondo estas 2.407407 ..., uzu skalon-deklaron ene de la ŝnuro limigita per la unuopa citaĵo:

#! / bin / bash echo 'scale = 3; 6.5 / 2.7 ' bc

Por pli bona legebleco, la linio kun la kalkuloj povas esti reescrita en multaj linioj. Por rompi la komandlinion en multajn liniojn, vi povas meti malantaŭen ĉe la fino de la linio:

eĥo 'skalo = 3; var1 = 6.5 / 2.7; var1 '\ | bc

Por inkluzivi komandlinajn argumentojn en viaj kalkuloj, vi devas ŝanĝi la unuajn citaĵojn en duoblajn citaĵojn por ke la komandliniaj parametroj similas la Bash-ŝelon:

eĥo "skalo = 3; var1 = 6.5 / 2.7; var2 = 14 * var1; var2 * = $ 1; var2" \ | bc

La unua komandlinia argumento estas alirita per la variablo "$ 1", la dua argumento uzas "$ 2" ktp.

Nun vi povas skribi viajn proprajn personecigitajn aritmetikajn funkciojn en apartaj Bash-skriptoj kaj voki ilin de aliaj skriptoj.

Ekzemple, se script1 enhavas:

#! / bin / bash echo "skalo = 3; var1 = 6.5 / 2.7; var2 = 14 * var1; var2 * = $ 1; var2" \ | bc

... Kaj script2 enhavas

#! / bin / bash var0 = "100" eĥo "var0: $ var0" funkcio fun1 {eĥo "scale = 3; var1 = 10; var2 = var1 * $ var0; var2" \ | bc} fres = $ (fun1) eĥo "fres:" $ fres var10 = $ (./ script1 $ fres); eĥo "var10:" $ var10;

... tiam ekzekutante skripto 2 alpreĝos skripton 1 uzante variablon $ freskalkulitan en script2 kiel parametro.