GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come fare matematica di base nella riga di comando di Linux

Linux bash, o riga di comando, ti consente di eseguire operazioni aritmetiche e booleane sia di base che complesse. I comandi come expr, jot, bc e, factor ecc., ti aiutano a trovare soluzioni matematiche ottimali a problemi complessi. In questo articolo descriveremo questi comandi e presenteremo esempi che serviranno come base per passare a soluzioni matematiche più utili.

Abbiamo eseguito i comandi e le procedure menzionati in questo articolo su un sistema Ubuntu 18.04 LTS.

Stiamo usando la riga di comando di Ubuntu, il Terminale, per eseguire tutte le operazioni matematiche. Puoi aprire il Terminale tramite il Dash di sistema o la scorciatoia Ctrl+Alt+T.

Il comando expr

Il comando expr o expression in Linux è il comando più comunemente usato per eseguire calcoli matematici. Puoi utilizzare questo comando per eseguire funzioni come addizione, sottrazione, moltiplicazione, divisione, incremento di un valore e persino confronto di due valori. In questa sezione descriveremo la sintassi per eseguire i calcoli sopra menzionati e presenteremo anche come utilizzare il comando expr per eseguire calcoli produttivi nella riga di comando di Ubuntu.

Aggiunta

Puoi aggiungere due o più numeri tramite il comando expr come segue:

$ expr numero1 + numero2

Esempio:

$ expr 100 + 10

Sottrazione

Puoi eseguire la sottrazione su due o più numeri tramite il comando expr come segue:

$ expr numero1 – numero2

Esempio:

$ expr 100 - 10

Moltiplicazione

Puoi eseguire la moltiplicazione di due o più numeri tramite il comando expr come segue:

$ expr numero1 \* numero2

Esempio:

$ expr 10 \* 10

Tieni presente che la seguente è la sintassi sbagliata per la moltiplicazione dei numeri nella riga di comando di Linux poiché la riga di comando utilizza semplici asterischi come riferimento a tutti i file nella directory corrente.

$ expr 10 * 10

Divisione

Puoi dividere un numero dall'altro tramite il comando expr come segue:

$ expr numero1 / numero2

Esempio:

$ expr 100 / 10

Incrementa una variabile

Puoi incrementare una variabile in Linux definendola prima come segue:

$ count_variable=0

E poi, usando la seguente espressione, usando il comando expr, per eseguire l'operazione di incremento:

$ count_variable=`expr $count_variable + 1`

Ora, quando fai eco al valore della variabile tramite il comando seguente, verrà stampato il valore incrementato della variabile inizialmente definita.

$ echo $count_variable

Confronto

Tramite il comando expr puoi anche verificare se un numero è maggiore di un altro numero oppure no.

$ expr numero1 \> numero2

Esempio:

$ expr 20 \> 10

Il valore del risultato 1 indica che il primo numero è maggiore del secondo. Considerando che il valore del risultato 0 indica che il primo numero non è maggiore del secondo.

Esempio:

$ expr 10 \> 20

Tramite il comando expr è inoltre possibile visualizzare se due numeri sono uguali o meno utilizzando la seguente sintassi:

$ espr numero1 =numero2

Esempi:

$ expr 10 = 10
$ expr 10 = 15

Il valore del risultato 1 indica che il primo numero è uguale al secondo. Considerando che il valore del risultato 0 indica che i due numeri non sono uguali.

Negli esempi precedenti, possiamo vedere ad occhio nudo che i due numeri confrontati sono uguali o meno. Allora, come è utile questa operazione?

Supponiamo che durante un programma si voglia sapere se la media calcolata di alcuni numeri è uguale a 10 oppure no. Qui possiamo utilizzare al meglio il comando expr per confrontare i risultati della variabile "media" con 10 ed eseguire ulteriori operazioni in base a questo risultato.

$ average=10
$ expr $average = 10

Uso produttivo del comando expr

Presentiamo un esempio in cui il comando expr può essere effettivamente produttivo. In questo esempio, useremo il comando expr per calcolare quanti dolci riceve un bambino quando ci sono 10 bambini e 122 dolci. Il programma calcolerà anche il numero di dolci rimasti dopo che tutti i bambini avranno ricevuto lo stesso numero di dolci.

$ children=10
$ sweets=122
$ PerChildShare=`expr $sweets / $children`
$ RemainingSweets=`expr $sweets - $children \* $PerChildShare`

echo $PerChildShare
echo $RemainingSweets

L'output mostra perfettamente che la giusta quota del take di ogni bambino è 12, lasciando 2 nel piatto.

Il comando jot

Il comando Linux jot ti aiuta a creare un elenco di numeri in base ai valori che fornisci come numero iniziale e al numero di valori che desideri visualizzare dopo di esso. In questa sezione descriveremo la sintassi per eseguire calcoli tramite jot e presenteremo anche come utilizzare il comando jot per eseguire calcoli produttivi nella riga di comando di Ubuntu.

Potrebbe essere necessario prima installare Athena-jot per utilizzare il comando jot su Ubuntu.

Immettere il seguente comando come sudo poiché solo una persona autorizzata può aggiungere/rimuovere e configurare software su Ubuntu:

$ sudo apt install athena-jot

Il sistema potrebbe richiedere un'opzione S/n per confermare la continuazione dell'installazione. Inserisci Y e quindi premi invio per continuare, dopodiché il software verrà installato sul tuo sistema.

Stampa x numeri dopo il numero y

Con il comando jot è possibile stampare x numero di valori dopo il numero y. Utilizzare il comando seguente per farlo:

$ jot x y

Il seguente esempio ti chiarirà le cose:

$ jot 5 1

Il nostro output di esempio mostra un elenco di 5(x) valori dopo il numero 1(y).

Stampa al contrario x numeri dopo il numero y fino al numero z

Puoi anche usare il comando jot per invertire la stampa x numero di valori dopo un numero y, che termina con il numero z. Utilizzare la seguente sintassi per farlo:

$ jot x y z

Il seguente esempio ti chiarirà le cose:

$ jot 9 10 2

Il nostro esempio di output inverso mostra 9(x) valori prima del numero 10(y), finché l'elenco non raggiunge il numero 2(z).

Uso produttivo del comando jot

Presentiamo un esempio in cui il comando jot può essere effettivamente produttivo. In questo esempio, utilizzeremo il comando jot per stampare 15 (valore di x) giorni di gennaio a partire dal giorno 1 (valore di y).

$ for i in `jot 15 1`; do echo January $i; done

Ecco l'output:

Abbiamo usato il ciclo for usando l'output del comando jot come valore di input per la variabile i.

Il comando del fattore

Come risulta evidente dal nome, il comando factor in Linux viene utilizzato per calcolare il valore dei fattori di un numero che forniamo.

Sintassi:

Numero fattore $

Esempi:

Negli esempi precedenti, puoi vedere come il comando factor stampa più fattori di un dato numero tranne 13, poiché il numero 13 non ha altri fattori oltre a se stesso.

Il comando bc

Il comando bc è molto utile quando si eseguono operazioni complesse in bash. Questo comando può anche fare confronti, gestire booleani e calcolare radici quadrate, seni, coseni e tangenti, ecc. Tutto quello che devi fare è reindirizzare l'espressione matematica al comando bc come segue:

$ echo “espressione_matematica” | bc

L'output visualizza quindi il risultato dell'espressione matematica.

Esempio:

$ echo "10+10/2-(2*2)" | bc

Calcolo Pi

Poiché il comando bc non evita la precisione e la stringa che vuoi inserire è piuttosto semplice, puoi usarlo per calcolare il valore di pi al numero desiderato di punti decimali.

Nell'esempio seguente, stiamo stampando il valore di pi specificando un valore di scala per arrotondare il decimale.

$ echo "scale=2; 4*a(1)" | bc -l

Poiché il valore della scala è 2, il risultato di pi verrà ridimensionato a due decimali.

echo "scale=10; 4*a(1)" | bc -l

Poiché il valore della scala è 10, il risultato di pi verrà ridimensionato a dieci punti decimali.

Esecuzione di matematica Bash

Puoi eseguire semplici calcoli matematici usando una serie di doppie parentesi. Puoi eseguire operazioni aritmetiche e booleane in bash attraverso questa tecnica.

Aritmetica

Il seguente elenco di operazioni aritmetiche può essere eseguito in Linux bash:

+, – Addizione, sottrazione
++, — Incrementa, decrementa
*, / , % Moltiplicazione, divisione, resto
** Valore esponente

Esempio 1:

$ ((x=10))
$ (( e = e + 5 ))
$ echo $e

Esempio 2:

$ ((x=10))
$ ((x--))
$ echo $e

Esempio 3:

$ ((x=10))
$ ((x=x**2))
$ echo $e

Booleano e logico

La matematica bash ti consente anche di utilizzare espressioni booleane e logiche tra parentesi di dubbio per eseguire calcoli matematici.

Esempio:

$ ((x=10)); ((y=5))

if (( x > y )); then echo $x; fi

Questo esempio confronta due variabili e restituisce il valore di x solo se è maggiore di y.

Attraverso la sintassi dei comandi e gli esempi presentati in questo articolo, ora sei in grado di eseguire operazioni matematiche di base tramite Linux bash. Ciò servirà come base per eseguire operazioni più complesse come l'utilizzo di script bash per scrivere programmi. Inoltre, puoi anche eseguire calcoli interattivi in ​​cui puoi inserire valori dall'utente, elaborare l'input e quindi produrre risultati in base a tali valori.


Ubuntu
  1. Come controllare l'utilizzo della CPU in Linux con la riga di comando

  2. Come cancellare la cronologia della riga di comando BASH in Linux

  3. Fai matematica sulla riga di comando di Linux con il comando expr

  4. Come spegnere o riavviare Linux utilizzando la riga di comando

  5. Come riavviare Linux utilizzando la riga di comando

Come arrestare o riavviare Linux utilizzando la riga di comando

Come estrarre il file Tar.xz sulla riga di comando di Linux

Come convertire PDF in immagini nella riga di comando di Linux

Come cercare Wikipedia tramite riga di comando su Ubuntu Linux

Come trovare l'indirizzo IP nella riga di comando di Linux

Procedura:Linux Generale – IPTable di base tramite riga di comando