Come usare il modulo in bash?

Come usare il modulo in bash?
In matematica, l'operatore di modulo è ampiamente noto per determinare il resto di due valori sulla divisione. Questo operatore matematico può essere utilizzato anche nello script bash. Pertanto, vedremo come un operatore di modulo può essere utilizzato in bash con diversi modi per ottenere il resto. Cominciamo accedendo da Ubuntu 20.04 Sistema. Prova "Ctrl+Alt+T" per avviare il terminale Shell sul desktop Ubuntu. Facciamo alcuni esempi.

Esempio 01:

Cominciamo con il primo esempio di semplicemente utilizzo dell'operatore di modulo sul terminale stesso. Per utilizzare il modulo nella shell, dobbiamo utilizzare il comando "expr" per valutarne il valore. Quindi, abbiamo aggiunto consecutivamente tre comandi "expr" per scoprire ogni volta il modulo di due valori interi utilizzando l'operatore "%" tra loro e ottenuto tre valori rimanenti.

$ expr 79 % 12
$ EXPR 89 % 12
$ expr 99 % 12

Esempio 02:

Vediamo come può essere utilizzato un operatore di modulo all'interno dello script bash durante l'utilizzo dei file bash. Quindi, abbiamo creato un nuovo file, "Modulo.sh "e lo ha aperto all'interno dell'editore" GNU Nano ".

$ touch modulo.sh
$ nano modulo.sh

È necessario aggiungere prima l'estensione bash all'interno del file.e., "##!/bin/bash ". Successivamente, abbiamo due variabili, "A" e "B" e assegnati valori interi ad entrambi. Un'altra variabile, "Res" è stata utilizzata l'operatore del modulo per calcolare il modulo di entrambe le variabili, i.e., a e b. Alla fine, l'istruzione Echo viene utilizzata qui per mostrare il resto di entrambe le variabili calcolate da un operatore di modulo all'interno del terminale di shell.

Quando eseguiamo questo codice, visualizzerà 1 come il resto ai valori 10 e 3.

$ Bash Modulo.sh

Esempio 03:

Per rendere il nostro codice più interattivo, prendiamo i valori dall'utente come input. Quindi, abbiamo aggiunto l'estensione bash. Qui sono state utilizzate due dichiarazioni di lettura per ottenere l'input dall'utente e salvare nelle variabili "A" e "B". L'ingresso deve essere un tipo intero. La variabile "Res" ha calcolato il resto utilizzando l'operatore Modulo, visualizzando il comando Echo.

Dopo aver eseguito questo codice per la prima volta, un utente ha aggiunto 17 e 3 e ne ha ottenuto 2 come resto.

$ Bash Modulo.sh

All'esecuzione di questo codice una seconda volta, l'utente ha aggiunto 53 e 3 come input e ha ottenuto 2 come modulo.

$ Bash Modulo.sh

Esempio 04:

Cominciamo a usare il modulo in alcuni loop all'interno dello script bash. Quindi, apri nuovamente lo stesso file per aggiornare il codice. Dopo aver aggiunto l'estensione di Bash, abbiamo inizializzato un ciclo "per" che va dal valore 3 a 43. All'interno di esso, l'istruzione "if" è stata utilizzata per valutare l'espressione. Il comando "EXPR" è stato usato qui per calcolare il resto usando l'operatore Modulo sull'intervallo definito su ciascun iteratore diviso per "2". L'istruzione "if" ha verificato che se il resto dell'espressione non è uguale a "0", continuerà a stampare il valore dell'intervallo particolare tramite l'istruzione "eco". Il ciclo "per" termina dopo l'istruzione "if".

Dopo aver eseguito il modulo file.Sh sulla shell con il comando bash, abbiamo ottenuto il seguente risultato di seguito. Poiché tutti i numeri uniforme dell'intervallo erano completamente divisibili per "2" e ottennero il resto "0", ecco perché l'affermazione "eco" non li mostra sulla shell. Mentre tutti i numeri dispari non erano completamente divisibili per "2", quindi sono stampati.

$ Bash Modulo.sh

Esempio 05:

Se qualcuno vuole anche mostrare il resto, questo esempio è per lui/lei perché non abbiamo mostrato il resto nell'esempio precedente. Il codice inizia prendendo i valori interi come input dall'utente e salvandoli nella variabile "A". La variabile "REM" utilizza l'operatore modulo per calcolare il resto del valore "A" diviso per 2. L'istruzione Echo mostra il resto. Se il "resto" è uguale a "0", visualizzerà il messaggio di successo; Altrimenti, il messaggio di errore sulla shell utilizza le dichiarazioni di eco nelle clausole "If" e "Else".

L'utente ha aggiunto 8 come input e ottenuto "0" come resto all'esecuzione del codice. Quindi, ha ricevuto un messaggio di successo.

$ Bash Modulo.sh

Durante l'esecuzione del codice una seconda volta, l'utente ha aggiunto 14 come input e ne ha ottenuto 1 come resto. Quindi, ha ricevuto il messaggio "non completamente divisibile".

$ Bash Modulo.sh

Tutto questo tempo, abbiamo usato lo stesso divisore, io.e., 2. Cambiamo il divisore. Quindi, apri lo stesso file e aggiornalo su "7" secondo l'immagine SNAP. Il codice rimanente è lo stesso. Salva il codice bash aggiornato per vedere i risultati.

Dopo aver eseguito il file aggiornato, l'utente ha aggiunto "89" come dividendo. Di conseguenza, se diviso per "7", ha ottenuto "5" come resto. Pertanto, la dichiarazione "non completamente divisibile" è stata eseguita.

$ Bash Modulo.sh

Durante lo esegui di nuovo, l'utente ha aggiunto 77 come input e ottenuto 0 come promemoria, i.e., completamente divisibile.

$ Bash Modulo.sh

Esempio 06:

Facciamo il nostro ultimo e più significativo esempio per ottenere il dividendo e il valore divisore dell'utente. Quindi, l'affermazione "lettura" è stata usata qui per questo scopo. Il valore del dividendo è stato salvato alla variabile "A" e il valore del divisore verrebbe salvato alla variabile "B". L'istruzione "if" è stata utilizzata per fare una condizione. Il comando "expr" viene utilizzato per ottenere il modulo di entrambi i valori, i.e., a e b. L'istruzione "if" controlla se il resto è equivalente a 0 o no. Se uguale, stamperà la dichiarazione "eco" della clausola "if", altrimenti della clausola "else".

Dopo aver eseguito questo codice, l'utente ha aggiunto 77 come input diviso e 4 come divisore. Il resto non era uguale a 0, quindi mostrava la dichiarazione "eco" della clausola "else".

$ Bash Modulo.sh

Conclusione:

Questo articolo sarebbe davvero utile per colpire gli utenti quando si calcola il resto di alcuni valori matematici con l'operatore del modulo nella shell. Tutti gli esempi sono facili e spiegati molto bene per una migliore comprensione.