Programmazione BASH

Che cos'è BC in uno script Bash?

Che cos'è BC in uno script Bash?
BC, che sta per Basic Calculator, è un comando in Bash che viene utilizzato per fornire la funzionalità di una calcolatrice scientifica all'interno di uno script Bash. Questo può essere utile per lo scripting con vari casi d'uso e scenari aritmetici. Questo articolo mostra come usare BC in uno script Bash.

Esempi di utilizzo del comando BC in uno script Bash

Per saperne di più sull'uso del comando BC in uno script Bash in Linux Mint 20, dai un'occhiata agli esempi forniti nelle sezioni seguenti:

Esempio 1: calcolo della potenza di un numero

La programmazione in Bash ci consente solo di eseguire operazioni matematiche su numeri interi, i.e., non puoi eseguire calcoli con decimali o numeri a virgola mobile in Bash. Per calcolare la potenza di un decimale con esponente intero, scriveremo il seguente script Bash:

In questo script Bash, un comando echo di una riga calcola la seconda potenza di "2.5."Il risultato viene reindirizzato al comando BC, che eseguirà questo calcolo.

Dopo aver salvato questo script, possiamo eseguire il seguente comando:

$ bash BC.sh

L'output del nostro script Bash risulta in un numero decimale, come mostrato nell'immagine qui sotto. Questa operazione non sarebbe stata possibile senza il comando BC.

Esempio 2: verificare se un numero è minore di un altro numero

Il comando BC può essere utilizzato anche per confrontare se un numero è maggiore o minore di un altro. Per fare un confronto del genere, scriveremo il seguente script Bash:

In questo script Bash, di nuovo, viene utilizzato un comando echo a una riga. Il comando controlla se un numero è minore di un altro numero. Il risultato viene reindirizzato al comando BC, che eseguirà questo confronto. L'output di questo contrasto sarà "1" se l'affermazione data è vera; in caso contrario, l'uscita sarà "0."

L'output dello script Bash sopra è "0" poiché 10 è maggiore di 5, il che rende falsa la nostra affermazione. Questo output può essere visto nell'immagine qui sotto:

Esempio 3: verificare se un numero è uguale a un altro numero

Come nell'Esempio 2, anche in questo esempio viene utilizzato il comando BC; tuttavia, questa volta, il comando verificherà se un numero è uguale a un altro numero. Per fare un tale confronto, scriveremo il seguente script Bash:

In questo script Bash, un comando echo di una riga controlla se il primo numero è uguale all'altro numero. Il risultato viene reindirizzato al comando BC, che eseguirà questo confronto. L'output di questo script sarà "1" se l'affermazione data è vera; in caso contrario, l'output sarà "0" se l'istruzione è falsa.

L'output del nostro script Bash è "1" poiché 2 è uguale a 2, il che rende vera la nostra affermazione. Questo output può essere visto nell'immagine qui sotto:

Esempio 4: utilizzo del comando BC con l'operatore logico &&

Il comando BC può anche essere associato a operatori logici in Bash, inclusi && e ||, che corrispondono rispettivamente alla moltiplicazione logica e all'addizione logica. Il risultato dell'operatore logico && è vero, o "1", quando tutti gli input forniti sono diversi da zero. In caso contrario, il risultato sarà falso o "0.” Per utilizzare l'operatore && con il comando BC in Bash, scriveremo il seguente script Bash:

In questo script Bash, un semplice comando echo di una riga esegue l'operazione logica && tra i numeri "10" e "0."Il risultato viene reindirizzato al comando BC che eseguirà questa operazione.

L'output del nostro script Bash è "0" poiché almeno uno dei nostri valori forniti non è diverso da zero, il che rende falsa la nostra operazione. Questo output può essere visto nell'immagine qui sotto:

Esempio 5: utilizzo del comando BC con || Operatore logico

Il risultato del || l'operatore logico è vero o "1" quando uno degli input forniti è diverso da zero. In caso contrario, il risultato sarà falso o "0.” Per usare il || operatore con il comando BC in Bash, scriveremo il seguente script Bash:

In questo script Bash, un semplice comando echo a una riga esegue l'operazione logica || tra due numeri, “10” e “0."Il risultato viene reindirizzato al comando BC che eseguirà questa operazione.

L'output del nostro script Bash è "1" poiché uno dei nostri valori forniti è diverso da zero, il che rende vera la nostra operazione. Questo output può essere visto nell'immagine qui sotto:

Esempio 6: divisione di numeri decimali con il risultato in decimale

Possiamo anche usare il comando BC per dividere i numeri decimali e restituire il risultato in forma decimale, fino a una determinata cifra decimale. Per ottenere questa precisione decimale, scriveremo il seguente script Bash:

In questo script Bash, un comando echo di una riga divide due numeri, "6.5” e “2.7.” Vogliamo che il risultato sia accurato fino a “3” posizioni decimali e abbiamo usato il flag “scale” per questo scopo. Il risultato viene reindirizzato al comando BC che eseguirà questo calcolo.

L'output del nostro script Bash risulta in un numero decimale corretto fino a 3 posizioni decimali, come mostrato nell'immagine qui sotto. Ciò non sarebbe stato possibile senza l'utilizzo del “bandiera di scala” con il comando BC. L'output può essere visto nell'immagine qui sotto:

Conclusione

In questo articolo, abbiamo fornito diversi esempi di utilizzo del comando BC nello script Bash in Linux Mint 20. Tuttavia, c'è ancora molto altro che puoi fare con questo potente comando che puoi esplorare da solo e aggiungere più matematica e calcoli ai tuoi script bash.

Il tasto sinistro del mouse non funziona su Windows 10
Se stai utilizzando un mouse dedicato con il tuo laptop o computer desktop ma il il tasto sinistro del mouse non funziona su Windows 10/8/7 per qualch...
Il cursore salta o si sposta in modo casuale durante la digitazione in Windows 10
Se scopri che il cursore del mouse salta o si sposta da solo, automaticamente, in modo casuale durante la digitazione nel laptop o nel computer Window...
Come invertire la direzione di scorrimento del mouse e dei touchpad in Windows 10
Topo e Touchpads non solo rende l'elaborazione semplice, ma anche più efficiente e richiede meno tempo. Non possiamo immaginare una vita senza questi ...