Puncte:0

În scriptul shell, cum pot lua intrarea utilizatorului pentru o variabilă și pot potrivi și valida valorile?

drapel tn

Arr=(exv err tmp)
Arr_1=(7 5 5)

În aceasta, vreau să iau intrare de la utilizator, astfel încât să poată valida valoarea arr și arr_1 din matrice. Și dacă nu se potrivește cu intrarea utilizatorului, se afișează o eroare. am venit cu

#!/bin/bash
Selectați un în arr[@]; do
Dacă [[ "arr[@]" == *"a"* ]]; atunci
ecou ""
pauză
altfel 
ecou ""
fi
Terminat

Există vreo altă metodă prin care pot obține același rezultat?

Liso avatar
drapel sd
Doar curios, dacă doriți să primiți intrare, nu ar trebui să folosiți `read` în loc de `select`?
Fox Chasin avatar
drapel tn
Am deja intrarea definită. Vreau doar să potrivesc cel pe care l-am introdus în terminal cu cel definit.
drapel hr
Este greu de ghicit ce înseamnă „același rezultat”, deoarece de fapt nu ai furnizat nimic funcțional
Liso avatar
drapel sd
@FoxChasin „Intrat în terminal”, adică acceptați intrarea utilizatorului, nu? După cum am înțeles, doriți să: 1. Utilizatorul să tastați la terminal 2. Reveniți succes dacă se găsește în matrice 3. Returnați eroare dacă nu se găsește în matrice. Am dreptate ?
Fox Chasin avatar
drapel tn
@Liso da ai dreptate.
Fox Chasin avatar
drapel tn
Folosesc select pentru a face asta. Există vreo altă cale?

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.