Πώς να λάβετε στοιχεία από έναν χρήστη στο σενάριο Bash [Προηγμένες τεχνικές]

Pos Na Labete Stoicheia Apo Enan Chreste Sto Senario Bash Proegmenes Technikes



Μπορείτε να δημιουργήσετε διαδραστικά σενάρια λαμβάνοντας δεδομένα από τον χρήστη κατά την εκτέλεση. Σας βοηθά επίσης να χειριστείτε την έξοδο σύμφωνα με τις απαιτήσεις. Υπάρχουν μερικές εύκολες μέθοδοι για τη λήψη πληροφοριών από τον χρήστη. Γι' αυτό είναι καλύτερο να χρησιμοποιείτε πιο προηγμένους τρόπους ως ενδιάμεσος ή ειδικός. Ωστόσο, πολλοί χρήστες του bash πρέπει να μάθουν προηγμένες τεχνικές για να λαμβάνουν πληροφορίες από τους χρήστες σε ένα σενάριο bash. Έτσι, σε αυτό το σεμινάριο, θα τα εξηγήσουμε όλα εν συντομία.

Πώς να λάβετε στοιχεία από έναν χρήστη στο σενάριο Bash [Προηγμένες τεχνικές]

Με την εντολή ανάγνωσης, μπορείτε να λάβετε είσοδο, αλλά γνωρίζετε ότι μπορείτε να λάβετε πολλές εισόδους; Ας πάρουμε ένα παράδειγμα για να λάβουμε σε βάθος πληροφορίες. Ας υποθέσουμε ότι θέλουμε να δημιουργήσουμε ένα σενάριο για να εκτελέσουμε έναν αριθμητικό υπολογισμό χρησιμοποιώντας πολλαπλούς αριθμούς (A, B, C, D, E):







#!/bin/bash

ηχώ 'Παρακαλώ εισάγετε τρεις αριθμούς'

ανάγνωση Α Β Γ Δ Ε

άθροισμα =$ ( ( Α+Β+Γ+Δ+Ε ) )

ηχώ «Προσθήκη είναι $sum '



πολλαπλασιάζω =$ ( ( ΕΝΑ * σι * ντο * ρε * ΚΑΙ ) )

ηχώ «Πολλαπλασιασμός είναι $πολλαπλασιάζω '



Τώρα, μπορούμε να εκτελέσουμε το σενάριο και να εισάγουμε τους αριθμούς για να υπολογίσουμε την πρόσθεση και τον πολλαπλασιασμό:







Εάν δεν θέλετε να δημιουργήσετε μια ξεχωριστή δήλωση echo, τότε μπορείτε να την προσθέσετε στην εντολή ανάγνωσης χρησιμοποιώντας την επιλογή -p:

#!/bin/bash

ανάγνωση 'Παρακαλώ εισάγετε το όνομα και την ηλικία σας:' όνομα ηλικία



αν [ $ηλικία - λ 17 ]

έπειτα

ηχώ 'Συγγνώμη!! Δεν πληροίτε τις προϋποθέσεις για το μάθημα'



αλλού

ηχώ 'Τέλεια!! Είστε επιλέξιμοι για το μάθημα'

είναι



Το παραπάνω σενάριο απαιτεί ο χρήστης να είναι τουλάχιστον 17 ετών για να πληροί τις προϋποθέσεις για το συγκεκριμένο μάθημα:

Λήψη εισόδου χρησιμοποιώντας το Stdin (Τυπική είσοδος)

Εάν θέλετε να πάτε ένα βήμα παραπέρα στις προηγμένες τεχνικές, τότε μπορείτε να χρησιμοποιήσετε την έννοια stdin. Μπορείτε να χρησιμοποιήσετε το stdin στο σενάριο για να βρείτε εύκολες λύσεις. Ας πάρουμε ένα παράδειγμα όπου θέλουμε να φιλτράρουμε τη λίστα των επιλέξιμων υποψηφίων που έχουν ήδη υποβάλει τα δίδακτρα. Έχουμε μια λίστα που περιέχει λεπτομέρειες όπως το όνομα του υποψηφίου, την ηλικία, την ημερομηνία υποβολής της φόρμας και την κατάσταση υποβολής αμοιβών. Μπορούμε λοιπόν να χρησιμοποιήσουμε το παρακάτω σενάριο για να λάβουμε τις επιθυμητές λεπτομέρειες:

#!/bin/bash

ηχώ 'λεπτομέρειες σχετικά με την υποβολή τελών:'



Γάτα / dev / stdin | Τομή -ρε '' -φά 1 , 4 | είδος

Αυτό το σενάριο παρέχει το ακόλουθο αποτέλεσμα:

Τυλίγοντας

Επομένως, όλα αυτά αφορούσαν τις προηγμένες τεχνικές που μπορείτε να δοκιμάσετε να λάβετε στοιχεία από τον χρήστη σε ένα σενάριο bash. Σε αυτό το σεμινάριο, έχουμε εξηγήσει διάφορες επιλογές στην εντολή ανάγνωσης και στο stdin για να εισάγετε γρήγορα την είσοδο. Εάν είστε νέοι στο bash και θέλετε να μάθετε πώς να λαμβάνετε πληροφορίες, επισκεφτείτε τον ιστότοπό μας για να μάθετε περισσότερα.