5 Modi Utli biex Tagħmel Aritmetika f'Linux Terminal


F'dan l-artikolu, ser nuruk diversi modi utli kif tagħmel l-aritmetika fit-terminal tal-Linux. Sa tmiem dan l-artikolu, int se titgħallem modi prattiċi differenti bażiċi kif tagħmel kalkoli matematiċi fil-linja tal-kmand.

Ejja nibdew!

1. Bl-użu ta 'Bash Shell

L-ewwel u l-eħfef mod tagħmel matematika bażika fuq il-Linux CLI hija parentesi doppja li tuża. Hawn huma xi eżempji fejn nużaw valuri maħżuna fil-varjabbli:

$ ADD=$(( 1 + 2 ))
$ echo $ADD
$ MUL=$(( $ADD * 5 ))
$ echo $MUL
$ SUB=$(( $MUL - 5 ))
$ echo $SUB
$ DIV=$(( $SUB / 2 ))
$ echo $DIV
$ MOD=$(( $DIV % 2 ))
$ echo $MOD

2. Bl-użu tal-Kmand expr

Il-kmand expr jevalwa l-espressjonijiet u jistampa l-valur tal-espressjoni pprovduta għall-output standard. Aħna se nħarsu lejn modi differenti kif nużaw expr biex nagħmlu matematika sempliċi, nagħmlu paragun, inżidu l-valur ta 'varjabbli u nsibu t-tul ta' string.

Dawn li ġejjin huma xi eżempji ta’ kif isiru kalkoli sempliċi bl-użu tal-kmand expr. Innota li ħafna operaturi jeħtieġ li jiġu maħruba jew ikkwotati għal qxur, pereżempju l-operatur * (se nħarsu lejn aktar taħt paragun tal-espressjonijiet).

$ expr 3 + 5
$ expr 15 % 3
$ expr 5 \* 3
$ expr 5 – 3
$ expr 20 / 4

Sussegwentement, se nkopru kif nagħmlu paraguni. Meta espressjoni tevalwa bħala falza, expr tipprintja valur ta' 0, inkella tistampa 1.

Ejja nħarsu lejn xi eżempji:

$ expr 5 = 3
$ expr 5 = 5
$ expr 8 != 5
$ expr 8 \> 5
$ expr 8 \< 5
$ expr 8 \<= 5

Tista 'wkoll tuża l-kmand expr biex iżżid il-valur ta' varjabbli. Agħti ħarsa lejn l-eżempju li ġej (bl-istess mod, tista 'wkoll tnaqqas il-valur ta' varjabbli).

$ NUM=$(( 1 + 2))
$ echo $NUM
$ NUM=$(expr $NUM + 2)
$ echo $NUM

Ejja nħarsu wkoll lejn kif issib it-tul ta 'sekwenza billi tuża:

$ expr length "This is linux-console.net"

Għal aktar informazzjoni speċjalment dwar it-tifsira tal-operaturi hawn fuq, ara l-paġna man expr:

$ man expr

3. Uża bc Command

bc (Kalkolatur Bażiku) hija utilità tal-linja tal-kmand li tipprovdi l-karatteristiċi kollha li tistenna minn kalkolatur xjentifiku jew finanzjarju sempliċi. Huwa speċifikament utli biex tagħmel matematika bil-punt li jvarja.

Jekk il-kmand bc mhux installat, tista' tinstallah billi tuża:

$ sudo apt install bc   #Debian/Ubuntu
$ sudo yum install bc   #RHEL/CentOS
$ sudo dnf install bc   #Fedora 22+

Ladarba tkun installata, tista 'taħdem fil-mod interattiv jew b'mod mhux interattiv billi tgħaddi l-argumenti lilu - aħna se nħarsu lejn iż-żewġ każijiet. Biex tħaddem b'mod interattiv, ittajpja l-kmand bc fil-pront tal-kmand u ibda tagħmel xi matematika, kif muri.

$ bc 

L-eżempji li ġejjin juru kif tuża bc b'mod mhux interattiv fuq il-linja tal-kmand.

$ echo '3+5' | bc
$ echo '15 % 2' | bc
$ echo '15 / 2' | bc
$ echo '(6 * 2) - 5' | bc

Il-bandiera -l tintuża għall-iskala default (ċifri wara l-punt deċimali) sa 20, pereżempju:

$ echo '12/5 | bc'
$ echo '12/5 | bc -l'

4. Bl-użu tal-Kmand Awk

Awk huwa wieħed mill-aktar programmi prominenti għall-ipproċessar tat-test f'GNU/Linux. Jappoġġja ż-żieda, it-tnaqqis, il-multiplikazzjoni, id-diviżjoni u l-operaturi aritmetiċi tal-modulu. Huwa utli wkoll biex tagħmel matematika bil-punt li jvarja.

Tista 'tużaha biex tagħmel matematika bażika kif muri.

$ awk 'BEGIN { a = 6; b = 2; print "(a + b) = ", (a + b) }'
$ awk 'BEGIN { a = 6; b = 2; print "(a - b) = ", (a - b) }'
$ awk 'BEGIN { a = 6; b = 2; print "(a *  b) = ", (a * b) }'
$ awk 'BEGIN { a = 6; b = 2; print "(a / b) = ", (a / b) }'
$ awk 'BEGIN { a = 6; b = 2; print "(a % b) = ", (a % b) }'

Jekk int ġdid Awk, għandna serje kompluta ta 'gwidi biex tibda titgħallemha: Tgħallem Awk Test Tool Processing.

5. Bl-użu tal-fattur Kmand

Il-kmand tal-fattur huwa użat biex jiddekomponi numru sħiħ f'fatturi ewlenin. Pereżempju:

$ factor 10
$ factor 127
$ factor 222
$ factor 110  

Dak kollox! F'dan l-artikolu, spjegajna diversi modi utli kif tagħmel l-aritmetika fit-terminal tal-Linux. Ħossok liberu li tistaqsi kwalunkwe mistoqsija jew taqsam xi ħsibijiet dwar dan l-artikolu permezz tal-formola ta 'feedback hawn taħt.