Come prendere input da un utente in Bash Script [tecniche avanzate]

Come prendere input da un utente in Bash Script [tecniche avanzate]

È possibile creare script interattivi prendendo input dall'utente durante l'esecuzione. Ti aiuta anche a manipolare l'output secondo i requisiti. Esistono alcuni metodi semplici per prendere input dall'utente. Ecco perché è meglio utilizzare modi più avanzati come intermedio o esperto. Tuttavia, molti utenti di bash devono imparare tecniche avanzate per prendere input dagli utenti in uno script bash. Quindi in questo tutorial, li spiegheremo tutti brevemente.

Come prendere input da un utente in Bash Script [tecniche avanzate]

Con il comando di lettura, puoi prendere input, ma sai che puoi prendere più input? Facciamo un esempio per ottenere informazioni approfondite. Supponiamo di voler creare uno script per eseguire un calcolo aritmetico usando numeri multipli (a, b, c, d, e):

#!/Bin/Bash
Echo "Inserisci tre numeri"
Leggi A B C D E
Sum = $ ((a+b+c+d+e))
echo "l'aggiunta è $ somma"
multiply = $ ((a*b*c*d*e))
Echo "La moltiplicazione è $ multiplica"

Ora possiamo eseguire lo script e inserire i numeri per calcolare l'aggiunta e la moltiplicazione:

Se non si desidera creare un'istruzione Echo separata, puoi aggiungerla nel comando Leggi usando l'opzione -P:

#!/Bin/Bash
Leggi -P "Inserisci il tuo nome ed età:" Nome Age
if [$ age -lt 17]
Poi
echo "Mi dispiace!! Non hai diritto al corso "
altro
Echo "Fantastico!! Hai diritto al corso "
fi

Lo script di cui sopra richiede a un utente di avere almeno 17 anni per ottenere l'ammissibilità per il corso particolare:

Prendi input usando stdin (input standard)

Se vuoi fare un ulteriore passo avanti nelle tecniche avanzate, puoi usare il concetto di stdin. È possibile utilizzare la stdin nello script per ottenere soluzioni facili. Facciamo un esempio in cui vogliamo filtrare l'elenco dei candidati idonei che hanno già presentato le commissioni. Abbiamo un elenco che contiene dettagli come nome candidato, età, data di invio del modulo e stato di invio delle commissioni. Quindi possiamo usare lo script di seguito per ottenere i dettagli desiderati:

#!/Bin/Bash
Echo "Dettagli sulla presentazione delle commissioni:"
Cat /Dev /stdin | taglio -d "-f 1,4 | ordina

Questo script fornisce il seguente risultato:

Avvolgendo

Quindi questo riguardava le tecniche avanzate che puoi provare a prendere input dall'utente in uno script bash. In questo tutorial, abbiamo spiegato diverse opzioni nel comando di lettura e la stdin per inserire rapidamente l'input. Se sei nuovo da bash e vuoi sapere come fare input, controlla il nostro sito Web per saperne di più.