Hogyan lehet bemenetet venni egy felhasználótól a Bash Scriptben [Speciális technikák]

Hogyan Lehet Bemenetet Venni Egy Felhasznalotol A Bash Scriptben Specialis Technikak



Létrehozhat interaktív szkripteket, ha a végrehajtás során bemenetet kér a felhasználótól. Segít abban is, hogy a kimenetet a követelményeknek megfelelően módosítsa. Van néhány egyszerű módszer a felhasználó bemeneti bevitelére. Éppen ezért a legjobb, ha haladóbb módszereket használ középhaladóként vagy szakértőként. Sok bash-felhasználónak azonban fejlett technikákat kell megtanulnia ahhoz, hogy a felhasználóktól a bash-szkriptben átvegye a bemenetet. Tehát ebben az oktatóanyagban mindet röviden elmagyarázzuk.

Hogyan lehet bemenetet venni egy felhasználótól a Bash Scriptben [Speciális technikák]

A read paranccsal bevihető, de tudja, hogy több bemenetet is fogadhat? Vegyünk egy példát, hogy mélyreható információkat kapjunk. Tegyük fel, hogy egy szkriptet akarunk létrehozni egy aritmetikai számítás elvégzéséhez több (A, B, C, D, E) szám használatával:







#!/bin/bash

visszhang 'Kérem, írjon be három számot'

olvas A B C D E

összeg =$ ( ( A+B+C+D+E ) )

visszhang 'A kiegészítés az $összeg '



szaporodnak =$ ( ( A * B * C * D * ÉS ) )

visszhang 'A szorzás az $szorozni '



Most már végrehajthatjuk a szkriptet, és beírhatjuk a számokat az összeadás és szorzás kiszámításához:







Ha nem szeretne külön echo utasítást létrehozni, akkor hozzáadhatja azt a read parancsban a -p kapcsolóval:

#!/bin/bash

olvas -o 'Kérjük, adja meg nevét és életkorát:' név életkor



ha [ $kor -lt 17 ]

akkor

visszhang 'Sajnálom!! Ön nem jogosult a tanfolyamra'



más

visszhang 'Szuper!! Ön jogosult a tanfolyamra'

lenni



A fenti szkript megköveteli, hogy a felhasználó legalább 17 éves legyen ahhoz, hogy jogosult legyen az adott tanfolyamra:

Bevitel bevitele Stdin használatával (normál bemenet)

Ha egy lépéssel tovább szeretne lépni a fejlett technikák terén, akkor használhatja az stdin koncepciót. A szkriptben az stdin használatával egyszerű megoldásokat találhat. Vegyünk egy példát, ahol ki akarjuk szűrni a jogosult jelöltek listáját, akik már benyújtották a díjakat. Van egy listánk, amely olyan részleteket tartalmaz, mint a jelölt neve, életkora, az űrlap benyújtásának dátuma és a díjbenyújtás állapota. Így az alábbi szkriptet használhatjuk a kívánt részletek eléréséhez:

#!/bin/bash

visszhang 'részletek a díjak benyújtásáról:'



macska / dev / stdin | vágott -d '' -f 1 , 4 | fajta

Ez a szkript a következő eredményt adja:

Becsomagolás

Tehát ez az egész azokról a fejlett technikákról szólt, amelyek segítségével megpróbálhatja átvenni a felhasználó bemeneti adatait egy bash szkriptben. Ebben az oktatóanyagban az olvasási parancs és az stdin különböző beállításait ismertetjük a bemenet gyors beviteléhez. Ha még nem ismeri a bash-t, és szeretné tudni, hogyan vegyen észrevételt, kérjük, látogasson el weboldalunkra, hogy többet megtudjon.