Kako pozvati Bash za uporabniški vnos
Poziv Bash za uporabniški vnos je preprost. To lahko storite z ukazom 'preberi'. Razdelimo ta razdelek še naprej, da razpravljamo o nekaterih primerih:
1. Osnovni pristop
Najprej morate ustvariti skript Bash in mu dati dovoljenja za izvedljivo datoteko. Tukaj uporabljamo ukaz »touch« za ustvarjanje datoteke ».sh«. Nato uporabite chmod, da izdate dovoljenje za izvršljivo datoteko.
dotik vnos.sh
chmod u+x vnos.sh
nano vnos.sh
Sedaj pa ustvarimo skript, ki od uporabnika vzame dve številki in izvede seštevanje.
#!/bin/bash
odmev 'Navedite številko'
prebrati št.1
odmev 'Navedite drugo številko'
prebrati št.2
vsota =$ ( ( num1 + num2 )
odmev 'Vsota $num1 in $um2 je $vsota '
Tukaj uporabnika pozovemo, naj pridobi številki »num1« in »num2«, da ju obdela v spremenljivki vsote in natisne svojo vsoto. Na koncu zaženite skript in sistem vas bo prosil, da vnesete dve številki.
. / vnos.sh
2. Napredni pristop
Oglejmo si napredno uporabo ukaza »read« in ustvarimo skript, ki odloča o izhodu na podlagi uporabniškega vnosa.
#!/bin/bashodmev 'Vnesite svoje ime'
prebrati ime
odmev 'Vnesite svojo oznako:'
odmev '1. Upravitelj'
odmev '2. Razvijalec'
odmev '3. Pisec vsebine'
prebrati imenovanje
Ovitek $oznaka v
'Upravitelj' )
oddelek = 'Oddelek za upravljanje v 3. nadstropju'
;;
'Razvijalec' )
oddelek = 'Razvojni oddelek v pritličju'
;;
'Pisec vsebine' )
oddelek = 'Vsebinski oddelek v 2. nadstropju'
;;
* )
oddelek = 'Neznan vnos se obrnite na HR'
;;
esac
odmev 'Ime: $name '
odmev 'Oznaka: $oznaka '
odmev 'Oddelek: $oddelek '
Ko zaženete skript, vnesite svoje ime in oznako in ustvari naslednji rezultat:
Nasprotno, če vnesete katero koli oznako, ki ni podana možnost, bi bil rezultat:
Zaključek
Pisanje skriptov Bash je lahko včasih zmedeno. Uporabniki pogosto iščejo metodo za ustvarjanje poziva v Bashu, da bi dobili uporabniški vnos. Glede na to smo v tem priročniku razložili isto. Poleg tega smo uporabili tudi primere uporabe ukaza »read« v osnovnih in naprednih skriptih, tako da ga lahko implementirate brez dodatnih poizvedb.