Eseguire operazioni aritmetiche di base
Le semplici operazioni aritmetiche come aggiunta, sottrazione, divisione e moltiplicazione possono essere eseguite utilizzando il comando "BC". La sintassi per l'applicazione di semplici operatori binari in bash utilizzando il comando "BC" è il seguente.
ubuntu@ubuntu: ~ $ echo ""| avanti Cristo
In questa sezione, useremo il comando "BC" per eseguire semplici operazioni aritmetiche.
ubuntu@ubuntu: ~ $ num1 = 2.35322 5
ubuntu@ubuntu: ~ $ num2 = 1.223353
ubuntu@ubuntu: ~ $ echo “$ num1+$ num2” | avanti Cristo
3.576578
ubuntu@ubuntu: ~ $ echo “$ num1- $ num2” | avanti Cristo
1.129872
ubuntu@ubuntu: ~ $ echo “$ num1*$ num2” | avanti Cristo
2.878824
ubuntu@ubuntu: ~ $ echo “$ num1/$ num2” | avanti Cristo
1
Nell'esempio sopra, mentre eseguiamo la divisione, abbiamo ottenuto il risultato senza punti decimali. Per ottenere il risultato fino ai punti decimali, dobbiamo impostare il valore di scala su "n" come mostrato nell'esempio seguente.
ubuntu@ubuntu: ~ $ echo “Scala = 10; $ num1/$ num2 "| avanti Cristo
1.9235862420
In alternativa, possiamo usare il flag '-l' e il comando 'BC' per ottenere l'output decimale.
ubuntu@ubuntu: ~ $ echo “$ num1/$ num2” | BC -L
1.92358624207403750184
Il comando "BC" può anche essere utilizzato per eseguire il modulo divisione e calcolare la potenza di un numero negli script bash.
ubuntu@ubuntu: ~ $ echo “10%4” | avanti Cristo
2
ubuntu@ubuntu: ~ $ echo “10^2” | avanti Cristo
100
Eseguire operazioni aritmetiche avanzate
Finora abbiamo usato il comando "BC" per eseguire alcune operazioni aritmetiche di base come addizione, sottrazione, moltiplicazione, ecc., Ora; In questa sezione, useremo il comando "BC" per eseguire alcune operazioni aritmetiche avanzate. Discuteremo di come possiamo utilizzare operatori di confronto, operatori logici o booleani, funzioni matematiche avanzate e dichiarazioni condizionali in bash usando il comando "BC".
Operatori di confronto
Gli operatori di confronto prendono due numeri, confrontali e poi restituiscono 1 O 0 A seconda del confronto. Se il confronto è vero, allora il risultato è Vero (1); Altrimenti, lo è Falso (0). Di seguito sono riportati alcuni esempi di operatori di confronto.
Di seguito sono riportati alcuni esempi di operatori di confronto utilizzati insieme al comando "BC".
ubuntu@ubuntu: ~ $ echo “5 == 5” | avanti Cristo
1
ubuntu@ubuntu: ~ $ echo “4!= 4 "| avanti Cristo
0
ubuntu@ubuntu: ~ $ echo “2> 5” | avanti Cristo
0
ubuntu@ubuntu: ~ $ echo “4<=4” | bc
1
Operatori booleani
Gli operatori booleani o logici sono utilizzati nelle dichiarazioni condizionali per eseguire alcune decisioni logiche. Di seguito sono riportati i tre operatori logici di base.
I seguenti esempi illustrano come vengono utilizzati gli operatori logici con il comando "BC".
ubuntu@ubuntu: ~ $ echo “-5 && 0” | avanti Cristo
0
ubuntu@ubuntu: ~ $ echo “-1 || 0 "| avanti Cristo
1
ubuntu@ubuntu: ~ $ echo "! 0 "| avanti Cristo
1
Dichiarazioni condizionali
Le dichiarazioni condizionali vengono utilizzate per eseguire comandi specifici a seconda della condizione applicata. La condizione applicata nell'istruzione condizionale prevede operatori logici e di confronto. Di seguito è riportato l'esempio delle dichiarazioni condizionali con il comando "BC".
ubuntu@ubuntu: ~ $ a = 15
ubuntu@ubuntu: ~ $ b = 20
ubuntu@ubuntu: ~ $ echo 'if (a> b) stampare "a è maggiore" else la stampa "b è maggiore" "| BC -L
B è maggiore
Nell'esempio sopra, l'istruzione controlla se a è maggiore di b o no. Se A è maggiore di B, stamperà "A è maggiore"; Altrimenti, stamperà “B è maggiore."Possiamo applicare qualsiasi condizione utilizzando operatori booleani e di confronto nell'esempio sopra.
Funzioni matematiche
Il comando "BC" fornisce anche alcune funzioni matematiche integrate che possiamo usare senza definirle. Di seguito sono riportate alcune funzioni essenziali utilizzate con il comando "BC" in bash.
Queste funzioni possono essere utilizzate con il comando "BC", come mostrato nei seguenti esempi.
ubuntu@ubuntu: ~ $ pi = 3.1415
ubuntu@ubuntu: ~ $ echo “s ($ pi/2)” | BC -L
1
ubuntu@ubuntu: ~ $ echo “c ($ pi/2)” | BC -L
0
ubuntu@ubuntu: ~ $ echo “a (1)” | BC -L
0.7854
La radice quadrata di un numero può essere calcolata in bash usando il comando "bc", come mostrato nella figura seguente.
ubuntu@ubuntu: ~ $ echo “sqrt (4)” | BC -L
2
Durante il tentativo di calcolare la radice quadrata di un numero negativo, la shell lancerà un errore di runtime.
ubuntu@ubuntu: ~ $ echo “sqrt (-2)” | BC -L
Errore di runtime (func = (main), ADR = 4): radice quadrata di un numero negativo
Il logaritmo naturale di un numero può essere calcolato in bash usando il comando "BC" come segue.
ubuntu@ubuntu: ~ $ echo “l (2)” | BC -L
.69314718055994530941
Conclusione
Durante la scrittura di script di automazione in bash, a volte abbiamo bisogno di funzioni matematiche avanzate e operatori logici per eseguire comandi. Il comando "BC" fornisce molte funzioni e operatori matematici avanzati per eseguire calcoli aritmetici di alto livello. Questo tutorial ha discusso utilizzando il comando "BC" per eseguire operazioni aritmetiche avanzate in bash.