Co je třeba vědět
- Použijte nechat příkaz k vytvoření aritmetického vyhodnocení výrazu, například v nechť m = (4 * 1024).
- Dostupné aritmetické operace jsou podobné těm ve standardních programovacích jazycích, jako jsou Java a C.
- Operátor let funguje pouze pro celočíselnou aritmetiku. Pro aritmetiku s plovoucí desetinnou čárkou použijte kalkulačku GNU bc.
Ačkoli je Bash skriptovacím jazykem, má většinu schopností univerzálního programovacího jazyka. To zahrnuje aritmetické funkce. Zde je postup, jak přidat výpočty do bash skriptu.
Jak přidat výpočty do skriptu Bash
Existuje řada možností syntaxe, které můžete použít k vyvolání aritmetického vyhodnocení výrazu. Snad nejčtenější je nechat příkaz. Například: nechť m = (4 * 1024)
class = „ql-syntax“> vypočítá 4krát 1024 a přiřadí výsledek proměnné „m“. Výsledek si můžete vytisknout přidáním echo prohlášení: echo $ m
class = „ql-syntax“> Můžete také vytvořit soubor obsahující příkazy Bash, v takovém případě byste měli přidat řádek v horní části souboru, který určuje program, který má kód spustit. Například: #! / bin / bash
class = „ql-syntax“> za předpokladu, že je spustitelný soubor Bash umístěn v / bin / bash. Musíte také nastavit oprávnění souboru skriptu, aby byl spustitelný. Za předpokladu, že je název souboru skriptu script1.sh, můžete nastavit oprávnění, aby byl soubor spustitelný pomocí příkazu: chmod + x script1.sh
class = „ql-syntax“> Poté jej můžete spustit pomocí příkazu: ./script1.sh
class = „ql-syntax“> Dostupné aritmetické operace jsou podobné těm ve standardních programovacích jazycích, jako jsou Java a C. Kromě násobení, jak je znázorněno výše, použijete dodatek: let m = (5 + 5)
class = „ql-syntax“> nebo odčítání: nechť m = (10 – 2)
class = „ql-syntax“> nebo division: let m = (10/2)
class = „ql-syntax“> nebo modulo (zbytek po celočíselném dělení): let m = (11/2)
class = „ql-syntax“> Když je operace použita na stejnou proměnnou, které je přiřazen výsledek, můžete použít standardní aritmetické operátory přiřazení zkratky, označované také jako operátory složeného přiřazení. Například pro přidání máme: ((m + = 15))
class = „ql-syntax“> což odpovídá „m = m + 15“. Pro odečtení máme: ((m- = 3))
class = „ql-syntax“> což odpovídá „m = m – 3“. Pro rozdělení máme: ((m / = 5))
class = „ql-syntax“> což odpovídá „m = m / 5“. A pro modulo máme: ((m% = 10))
class = „ql-syntax“> což odpovídá „m = m% 10“. Dále můžete použít přírůstek a úbytek operátoři: ((m ++))
class = „ql-syntax“> je ekvivalentní s „m = m + 1“. A ((m–))
class = „ql-syntax“> je ekvivalentní s „m = m – 1“.
Aritmetika s plovoucí desetinnou čárkou v Bash
The nechat operátor funguje pouze pro celočíselnou aritmetiku. Pro aritmetiku s plovoucí desetinnou čárkou můžete použít například kalkulačku GNU bc, jak je znázorněno v tomto příkladu: echo 32.0 + 1.4 | před naším letopočtem
Operátor „potrubí“ „|“ předá aritmetický výraz „32,0 + 1,4“ kalkulačce bc, která vrátí skutečné číslo. Příkaz echo vytiskne výsledek na standardní výstup.
Alternativní syntaxe pro aritmetiku
Backticks (zpět jednoduché uvozovky) lze použít k vyhodnocení aritmetického výrazu jako v tomto příkladu: echo `expr $ m + 18`
class = „ql-syntax“> Tím se k hodnotě proměnné „m“ přidá 18 a výsledek se vytiskne. Chcete-li přiřadit výpočetní hodnotu proměnné, můžete použít znaménko rovná se bez mezer kolem ní: m = `expr $ m + 18`
class = „ql-syntax“> Další způsob, jak vyhodnotit aritmetické výrazy, je použití dvojitých závorek. Například: ((m * = 4))
class = „ql-syntax“> Tím se čtyřnásobně zvýší hodnota proměnné „m“. Kromě aritmetického vyhodnocení poskytuje prostředí Bash další programovací konstrukce, například smyčky for, smyčky while, podmíněné výrazy a funkce a podprogramy.