BASH programavimas

Norėdami išbandyti eilutes, užrašykite „if -z“ ir „if -n“

Norėdami išbandyti eilutes, užrašykite „if -z“ ir „if -n“

„Bash“ sakinys „if“ gali būti naudojamas su skirtingais parametrais keliems tikslams atlikti. Kai dirbame su „Bash“ eilutėmis, mums labai svarbu patikrinti, ar eilutė yra nulinė, ar ne, kad ji negalėtų sukelti jokių problemų vykdant mūsų programą. Tiek „-z“, tiek „-n“ vėliavos gali būti naudojamos su sakiniu „jei“, kad išbandytumėte stygas, ir mes jums paaiškinsime, kaip tai galima padaryti šios dienos straipsnyje.

Pastaba: „Linux Mint 20“ naudojama norint išbandyti šiuos pavyzdžius.

Basho „if -z“ ir „if -n“ naudojimo būdas testuojant eilutes

Norėdami paaiškinti Bash „if -z“ ir „if -n“ naudojimą bandant eilutes, norėtume su jumis pasidalinti šiais scenarijų pavyzdžiais.

1 pavyzdys: „if -n“ naudojimas norint parodyti, kad eilutė yra tuščia

Norėdami parodyti, kad „Bash“ eilutė yra nulinė, naudojant sakinį „if -n“, atliksime šiuos veiksmus:

Pirmiausia sukursime „Bash“ failą savo namų kataloge pavadinimu „Stygos“.sh, kaip parodyta paveikslėlyje žemiau:

Sukūrę šį failą, savo faile įveskite scenarijų, rodomą šiame paveikslėlyje. Kaip ir kiekvienas „Bash“ scenarijus, pirmoji eilutė, t.e. „#!/ bin / bash “yra privaloma. Tada mes paskelbėme nulinę eilutę pavadinimu „vardas“. Nulinę „Bash“ eilutę galima paskelbti sulyginant kintamąjį su „“. Tada mes turime sakinį „if“, po kurio seka „-n“ vėliava, kuri grąžina reikšmę true, jei eilutė nėra nulis. Mes naudojome šią vėliavą norėdami išbandyti savo eilutę „vardas“, kuri yra niekinė. Tai reiškia, kad sąlyga „jei“ nebus vykdoma, nes šiuo atveju „-n“ vėliavos vertė bus klaidinga. Todėl mes taip pat turime dalį „kita“, kuri bus vykdoma spausdinant pranešimą ant terminalo.

Dabar atėjo laikas vykdyti šį failą, kurį galima padaryti naudojant žemiau pateiktą komandą:

$ bash stygos.sh

Kadangi eilutė, kurią paskelbėme negaliojančia, buvo įvykdyta mūsų scenarijaus „kita“ dalis ir atitinkamas pranešimas buvo atspausdintas ant terminalo, kaip parodyta šiame paveikslėlyje:

2 pavyzdys: „if -n“ naudojimas norint parodyti, kad eilutė nėra tuščia

Norėdami parodyti, kad „Bash“ eilutė nėra nulinė, naudojant sakinį „if -n“, atliksime šiuos veiksmus:

Mes įveskite šį scenarijų į savo Bash failą. Vienintelis scenarijaus pakeitimas, kurį sukūrėme aukščiau šiam scenarijui, yra tai, kad šį kartą „name“ eilutei priskyrėme galiojantį pavadinimą. Tai reiškia, kad šį kartą mūsų eilutė nėra niekinė, o tai reiškia, kad scenarijaus dalis „if“ turėtų būti vykdoma.

Dabar dar kartą paleiskite scenarijų ir pastebėsite, kad mūsų modifikuotas scenarijus veikia taip, kaip norėjome, šį kartą vykdydami scenarijaus dalį „jei“, kaip parodyta toliau pateiktame paveikslėlyje:

3 pavyzdys: „if -z“ naudojimas norint parodyti, kad eilutė nėra tuščia

Norėdami parodyti, kad „Bash“ eilutė nėra nulinė, naudojant sakinį „if -z“, atliksime šiuos veiksmus:

Šio scenarijaus scenarijus yra beveik toks pat, kaip ir aukščiau aptarto scenarijaus. Mes pakeitėme „-n“ vėliavą tik „-z“ vėliava, tačiau šį kartą mes taip pat pakeitėme scenarijaus dalis „jei“ ir „kita“, nes „-z“ vėliava grįžta teisingai, jei eilutė yra niekinis. Tai reiškia, kad šį kartą „kita“ scenarijaus dalis bus vykdoma, nes mūsų eilutė nebuvo nulinė.

Tai galite patikrinti paleisdami ką tik modifikuotą scenarijų ir galėsite pamatyti, kad jūsų eilutė nebuvo nulinė, kaip parodyta toliau pateiktame paveikslėlyje:

4 pavyzdys: „if -z“ naudojimas norint parodyti, kad eilutė yra nulis

Norėdami parodyti, kad „Bash“ eilutė yra nulinė, naudojant sakinį „if -z“, atliksime šiuos veiksmus:

Šiame scenarijuje naudojome tą patį scenarijų kaip ir 3 pavyzdyje. Vienintelis šio scenarijaus pakeitimas yra tai, kad mes padarėme savo eilutę nulinę, priskirdami jai nulinę vertę, kaip matote toliau pateiktame paveikslėlyje:

Dabar, kai vykdysime šį scenarijų, „if“ scenarijaus dalis bus vykdoma, nes eilutė yra nulinė, taigi „-z“ vėliavos vertė bus teisinga, kaip matote iš šio paveikslėlio:

5 pavyzdys: eilučių vartotojo įvedimas ir bandymas naudojant „if -z“

Norėdami patikrinti vartotojo pateiktą eilutės įvestį su sakiniu „if -z“, atliksime šiuos veiksmus:

Mes nukopijuosime žemiau esančiame paveikslėlyje parodytą scenarijų į savo „Bash“ failą. Čia mes prašome vartotojo įvesti eilutę, tada išsaugome tą eilutę kintamajame „string“ su komanda „read“. Tada mes išbandome šią eilutę su sakiniu „if -z“, kuris bus vykdomas, jei eilutė yra nulinė. Jei taip bus, šis scenarijus paragins vartotoją įvesti galiojančią eilutę ir tada tą eilutę atspausdins. Tačiau jei vartotojas pirmą kartą įveda galiojančią eilutę, tada bus vykdoma scenarijaus dalis „kita“.

Paleidus šį „Bash“ scenarijų, kai mums buvo pasiūlyta įvesti eilutę, mes tyčia įvedėme nulinę eilutę, t.e., mes tiesiog paspaudėme klavišą Enter. Štai kodėl mūsų terminalas paragino mus įvesti galiojančią eilutę, kaip parodyta šiame paveikslėlyje:

Šį kartą įvedėme galiojančią eilutę „labas“, todėl terminalas išspausdino atitinkamą pranešimą, kaip parodyta žemiau esančiame paveikslėlyje:

Išvada

Šis straipsnis išmokė visų skirtingų metodų, kuriais galite patikrinti, ar jūsų eilutės nėra teisingos, kai naudojate „-z“ ir „-n“ žymas su sakiniu „jei“. Naudodami šias vėliavas, mes galime išbandyti bet kokias eilutes ir todėl jas labai efektyviai naudoti scenarijuose.

Mūšis už Wesnothą 1.13.6 Išleista plėtra
Mūšis už Wesnothą 1.13.6 išleistas praėjusį mėnesį, yra šeštasis 1 versijos kūrimo leidimas.13.„x“ serija ir ji teikia daug patobulinimų, ypač vartoto...
Kaip įdiegti „League of Legends“ „Ubuntu 14“.04
Jei esate „League of Legends“ gerbėjas, tai jums yra galimybė išbandyti „League of Legends“. Atminkite, kad LOL palaikoma „PlayOnLinux“, jei esate „Li...
Įdiekite naujausią „OpenRA“ strategijos žaidimą „Ubuntu Linux“
„OpenRA“ yra „Free / Free Real Time Strategy“ žaidimų variklis, atkuriantis ankstyvuosius „Westwood“ žaidimus, tokius kaip klasikinis „Command & Conqu...