Software

Aritmetik i Bash

Forfatter: Louise Ward
Oprettelsesdato: 3 Februar 2021
Opdateringsdato: 15 Kan 2024
Anonim
Shell Scripting Tutorial | 11 | floating-point operation
Video.: Shell Scripting Tutorial | 11 | floating-point operation

Indhold

Sådan føjes beregninger til et bas-script

Selvom Bash er et scriptingsprog, har det stort set alle mulighederne for et programmeringssprog til generelle formål. Dette inkluderer aritmetiske funktioner. Der er et antal syntaksindstillinger, du kan bruge til at fremkalde aritmetisk evaluering af et udtryk. Den mest læsbare er måske lade kommando. For eksempel:

lad m = (4 * 1024)

beregner 4 gange 1024 og tildeler resultatet til variablen "m".

Du kan udskrive resultatet ved at tilføje et ekko udmelding:

ekko $ m

Du kan også oprette en fil, der indeholder Bash-kommandoer, i hvilket tilfælde du skal tilføje en linje øverst i filen, der specificerer det program, der skal udføre koden. For eksempel:


#! / Bin / bash

antager, at Bash-eksekverbare er placeret i / Bin / bash. Du skal også indstille tilladelserne til din scriptfil, så den kan eksekveres. Forudsat at scriptfilnavnet er script1.sh, kan du indstille tilladelserne til at gøre filen eksekverbar med kommandoen:

chmod + x script1.sh

Derefter kan du udføre det med kommandoen:

./script1.sh

De tilgængelige aritmetiske operationer ligner dem i standard programmeringssprog som Java og C. Udover multiplikation, som illustreret ovenfor, bruger du tilføjelse:

lad m = (5 + 5)

eller subtraktion:

lad m = (10 - 2)

eller opdeling:

lad m = (10/2)

eller modulo (resten efter en heltalopdeling):

lad m = (11/2)

Når en operation anvendes til den samme variabel, som resultatet er tildelt, kan du bruge de aritmetiske standardopgaver med tildeling af korthold, også kaldet sammensatte tildelingsoperatører. For eksempel har vi f.eks.:


((m + = 15))

hvilket er ækvivalent med "m = m + 15". Til subtraktion har vi:

((m- = 3))

hvilket svarer til "m = m - 3". For opdeling har vi:

((m / = 5))

hvilket er ækvivalent med "m = m / 5". Og til modulo har vi:

((m% = 10))

hvilket er ækvivalent med "m = m% 10".

Derudover kan du bruge tilvækst og formindskelsen operatører:

((m ++))

er ækvivalent med "m = m + 1". Og

((m--))

svarer til "m = m - 1".

Flydende aritmetik i bash

Det lade operatør fungerer kun for heltalearitmetik. Til aritmetisk med flydende punkt kan du f.eks. Bruge GNU bc-regnemaskinen som illustreret i dette eksempel:

ekko 32,0 + 1,4 | bc

Operatøren "pipe" | " overfører det aritmetiske udtryk "32.0 + 1.4" til bc-regnemaskinen, der returnerer det reelle tal. Echo-kommandoen udskriver resultatet til standardoutputet.


Alternativ syntaks til aritmetik

Backticks (tilbage enkelt citater) kan bruges til at evaluere et aritmetisk udtryk som i dette eksempel:

ekko `expr $ m + 18 '

Dette tilføjer 18 til værdien af ​​variablen "m" og udskriver derefter resultatet.

For at tildele beregningsværdien til en variabel kan du bruge det samme tegn uden mellemrum omkring den:

m = `expr $ m + 18 '

En anden måde at evaluere aritmetiske udtryk er at bruge dobbelt parentes. For eksempel:

((m * = 4))

Dette vil fordobles værdien af ​​variablen "m".

Udover aritmetisk evaluering tilvejebringer Bash-shell andre programmeringskonstruktioner, såsom for-loops, while-loops, conditionals og funktioner og subroutines.

Vi Råder Dig Til At Se

Friske Artikler

Sådan downloades musik til din Android-telefon
Tehnologies

Sådan downloades musik til din Android-telefon

Da din martphone andynligvi ogå er din muikafpiller, er internettet dit muikbibliotek. Der er dog tidpunkter, hvor du muligvi ikke har adgang til en internetforbindele, og tadig ønker at ly...
Hvad er Steam Chat?
Gaming

Hvad er Steam Chat?

team Chat er i det væentlige et grati alternativ til betalte temmechat-tjeneter om Teampeak, Mumble og Ventrillo. Die tjeneter leverer alle VoIP-kommunikation (Voice) via internet, om gamere kan...