Ang Bash Kung Variable ay Walang laman na Mga Pagkilos

Bash If Variable Is Empty Do Actions



Ang Bash scripting ay isa sa mga perks ng paggamit ng Linux. Pinapayagan kaming lumikha ng mga na-customize na utos at tool upang mai-automate ang aming pang-araw-araw na gawain. Tulad ng karamihan sa mga wika sa programa, binibigyan kami ng Bash ng mga kondisyong pahayag upang suriin ang mga tukoy na kundisyon at magsagawa ng mga aksyon batay sa resulta.

Ipapakita sa iyo ng tutorial na ito kung paano gamitin ang mga kondisyong pahayag upang suriin kung ang isang variable ay walang laman at pagkatapos ay magsagawa ng isang pagkilos pagkatapos ng katotohanan. Ang mga nasabing aksyon ay maaaring magsama ng pag-loop ng isang bloke ng code hanggang sa ang variable ay walang laman, umalis o simpleng alerto ang gumagamit na ang variable ay walang laman.







Bago kami magsimula, magiging kapaki-pakinabang kung pamilyar ka sa pangunahing Bash scripting.



Bash Basic - Mga variable 101

Ang mga variable ay pangunahing mga bloke ng pagbuo ng anumang tunay na wika ng programa, at ang Bash ay gumagamit ng mga variable. Ang mga variable ay mga lalagyan ng data na ginagamit upang mag-imbak ng mga halaga para magamit sa mga susunod na seksyon ng programa.



Upang lumikha ng isang simpleng variable sa Bash, ginagamit namin ang pangalan ng variable.





Halimbawa:

#! / baseng / bash

$ i_am

Kapag nasimulan mo na ang variable, maaari mong italaga ang halaga dito sa pamamagitan ng paggamit ng pantay na pag-sign bilang:



#! / baseng / bash

Ako ay= ubuntu

Sa sandaling naipahayag at naitalaga ito, maaari mo itong tawagan sa pamamagitan lamang ng pagsangguni dito sa pangalan bilang:

#! / baseng / bash

itinapon $ i_am

Ibabalik nito ang halagang nakaimbak sa variable, tulad ng ipinakita sa screenshot sa ibaba.

TANDAAN: Ang pagsangguni sa isang variable sa parehong solong mga quote at dobleng quote ay nagbabalik ng iba't ibang mga resulta. Ang isang variable sa loob ng solong mga quote ay magiging isang literal na string, habang sa isang dobleng quote, nakakakuha ito ng paggamot ng isang variable na pangalan.

Narito ang isang halimbawa:

Ngayon na mayroon kaming mga pangunahing kaalaman ng mga variable sa Bash, maaari kaming magpatuloy sa mga kondisyonal at suriin para sa isang walang laman na variable.

Para sa isang detalyadong gabay sa kung paano lumikha ng mga bash variable, isaalang-alang ang mapagkukunan sa ibaba:

https://linuxhint.com/variables_bash/

Mga Pangunahing Kaalaman sa Bash - Kung Mga Pahayag

Kung ang mga pahayag ay isa pang pangunahing block ng programa at ang Bash ay magiging isang lumpo nang wala sila. Pinapayagan nila kaming magsagawa ng isang aksyon kung ang isang kundisyon ay totoo o mali.

Gumawa tayo ng isang mabilis na muling pag-uusap kung paano gamitin ang Bash kung, kung… iba pa at kung… elif… iba pa

Ang kung S pagkatangay

Ang pangkalahatang syntax para sa paggamit ng isang if na pahayag sa Bash ay tulad ng ipinakita sa ibaba:

#! / baseng / bash

kung {kalagayan}

tapos

gawin

maging

Nagsisimula kami ng isang pahayag kung sa pamamagitan ng pagtawag sa kung keyword. Sinusundan namin pagkatapos sa pamamagitan ng pagtukoy ng kundisyon upang suriin. Ang kundisyon ay maaaring maging isang simple o isang kumplikadong ekspresyon hangga't sinusuri nito ang totoo o mali.

Susunod, itinakda namin ang keyword na tumutukoy sa pag-block ng code upang tumakbo kung ang kondisyon ay sinusuri sa totoo.

Panghuli, isinasara namin ang kung pahayag gamit ang fi keyword.

Kung… iba pang mga pahayag

Isang bash kung… iba pang pahayag ay tumutukoy ng isang labis na pagkilos kung ang kundisyon ay sinusuri sa hindi totoo. Ang pangkalahatang syntax ay:

#! / baseng / bash

kung {kalagayan}

tapos

gawin

iba pa

gawin

maging

Isang Halimbawa ng Kaso ng Paggamit

Payagan akong gumamit ng isang simpleng halimbawa upang mailarawan ang paggamit ng kung mga pahayag.

Ang kung pahayag ay tulad ng ipinakita sa ibaba:

#! / baseng / bash
sa isa=1
kung [[ $ num -gt5 ]]
tapos
itinapon '$ numay higit sa 5 '
iba pa
itinapon '$ numay mas mababa sa 5 '
maging

Ang output ay tulad ng ipinapakita sa ibaba:

Dahil mayroon na kaming mga pangunahing kaalaman ng kung ang mga pahayag ay naplantsa, magpatuloy tayo sa tutorial na ito.

Suriin kung ang mga pahayag sa mga detalye sa ibaba:

https://linuxhint.com/bash_conditional_statement/

Paano Suriin kung Walang laman ang Variable

Ang isang tanyag at simpleng paraan upang suriin kung ang isang variable ay walang laman ay ang paggamit ng pagpipilian na -z sa pahayag ng kundisyon.

Ang -z $ var ay babalik totoo kung ang isang variable ay walang laman at hindi totoo kung hindi.

Ang pangkalahatang syntax para sa naturang pagsubok ay:

#! / baseng / bash
kung [[ -Nga $ var ]]
tapos
gawin
iba pa
gawin
maging

Halimbawa ng Script

Ilarawan natin ang isang simpleng script na gumagaya sa utos ng cd at mag-navigate sa tinukoy na direktoryo.

Isaalang-alang ang script sa ibaba:

#! / baseng / bash
itinapon 'Ipasok ang landas upang mag-navigate sa:'

basahin_path

habang [[ -Nga $ _path ]];gawin
itinapon 'Mangyaring magbigay ng isang landas'
tapos na
itinapon 'Pag-navigate sa$ _path'
CD $ _path

Kapag naipatupad na namin ang query sa itaas, nakukuha namin ang output tulad ng ipinakita sa ibaba.

Nagsisimula ang script sa pamamagitan ng pagtatanong sa gumagamit na ipasok ang direktoryo upang mag-navigate. Sinusuri nito kung walang laman ang variable. Kung walang laman, recursively itong humihiling sa gumagamit ng isang landas hanggang sa ang variable ay hindi walang laman.

Kapag magagamit na ang landas, nagna-navigate ito sa itinakdang direktoryo at inililimbag ang katayuan.

Konklusyon

Ipinakita sa iyo ng maikling tutorial na ito kung paano suriin kung ang isang variable ay walang laman gamit ang -z flag. Sinusuri nito kung ang haba ng variable ay 0 at kung 0, walang laman ang variable. Maaari itong maging napakalakas kapag kailangan mo ng halaga ng isang variable upang maging totoo bago magpatuloy.

Maaari mo ring pagsamahin ang pahayag sa itaas sa iba pang mga expression upang lumikha ng isang kumplikadong tool kung ang variable ay walang laman o hindi.

Salamat, at oras ng Maligayang Pag-script !!