Mga Magsisubay Giya sa BASH - Pagpaanggid sa mga Butang

01 sa 08

Mga Magsisubay Giya sa BASH - Pagpaanggid sa mga Butang

Tutorial sa BASH - Nagtandi ang mga Strings.

Sa miaging bahin sa BASH tutorial kita mitan-aw sa conditional nga mga pamahayag .

Kanang giya dugay apan nagpakita lang kung unsaon pagkontrol sa agianan sa lohika. Kini nga giya nagpakita sa nagkalainlain nga mga pamaagi diin mahimo nimo itandi ang mga baryable.

Ang hulagway sa ibabaw nagpakita sa unang pananglitan sa giya niining semanaha:

#! / bin / bash

name1 = "gary"
name2 = "bob"

kung ["$ name1" = "$ name2"]
unya
echo "ang mga ngalan gipares"
lain pa
echo "ang mga ngalan wala motakdo"
fi


Sa nahisulat nga hilisgutan akong gihubit ang duha ka mga baryable nga gitawag nga name1 ug name2 ug gi-assign kanila ang mga mithi nga "gary" ug "bob". Ingon nga ang mga baryable nga anaa sa taliwala sa mga marka sa mga kinutlo gitawag sila nga mga variable sa string nga mahimong mas may kalabutan samtang ang tutorial nagpadayon.

Ang tanan nga skrip mao ang pagtandi sa bili sa $ name1 ug $ name2 ug kung kini ang tugbang sa output ang hugpong "ang mga ngalan nga tugbang" ug kon dili nila ipagawas ang hugpong "ang mga ngalan dili motakdo".

Ang mga marka sa mga kinutlo sa mga ngalan sa $ name1 ug $ name2 importante tungod kay kon ang bili sa bisan hain kanila wala ma-set nan ang script magamit gihapon.

Pananglitan kon ang $ name1 wala ma-set nan mahimo nimo nga itandi ang "" sa "bob". Kon wala ang mga marka sa mga kinutlo nga imong ibilin sa = "bob" nga tin-aw nga napakyas.

Mahimo usab nimo gamiton ang! = Notation aron mahibal-an nga dili katumbas sa mosunod:

kung ["$ name1"! = "$ name2"]

02 sa 08

Sugilanon Giya Ngadto sa BASH - Pagtandi nga mga Sumpay

Tutorial sa BASH - Nagtandi ang mga Strings.

Sa pananglitan sa ibabaw ang pagsulay nagtandi sa sama nga duha ka mga kuldas ug nangutana sa pangutana nga ang gary moabut sa wala pa bob sa alpabeto?

Tin-aw nga ang tubag dili.

Ang script nagpaila sa ubos kay sa operator (<). Sa ingon nga ang wala kaayo sa operator gigamit usab alang sa redirection kinahanglan mo nga makalingkawas niini uban sa slash (\) kay kini nagpasabot nga dili kaayo kini mao ang hinungdan sa skrip sa ibabaw nga akong gitandi ang "$ name1" \ <"$ name2".

Ang kaatbang sa dili kaayo dayag nga labaw pa kay sa. Imbis gamiton ang paggamit niini.

Pananglitan

kung ["$ name1" \> "$ name2"]

03 sa 08

Sugilanon Giya Ngadto sa BASH - Pagtandi nga mga Sumpay

Tutorial sa BASH - Nagtandi ang mga Strings.

Kung gusto nimo sulayan kung usa ka variable adunay usa ka bili nga imong magamit ang mosunod nga pagsulay:

kung [-n $ ngalan2]

Sa eskrin sa ibabaw gisulayan ko kung ang $ name2 gihatagan og usa ka bili ug kung dili kini ang mensahe nga "Walay bob, wala'y usa ka bob nga makita".

04 sa 08

Sugilanon Giya Ngadto sa BASH - Pagtandi nga mga Sumpay

Tutorial sa BASH - Nagtandi ang mga Strings.

Sa nangagi nga slide nga among gitabonan kung adunay usa ka variable nga gipahimutang o dili. Usahay bisan ang usa ka variable mahimo nga gipahimutang apan dili kini tinuod nga adunay bili.

Pananglitan:

name1 = ""

Aron masulayan kung ang usa ka variable adunay bili o dili (ie adunay gitas-on nga zero) paggamit -z ingon sa mosunod:

kung [-z $ name1]

Sa script sa ibabaw akong gipili ang $ name1 ngadto sa usa ka zero length string ug dayon gitandi kini gamit ang -z. Kon ang $ name1 mao ang zero ang gitas-on ang mensahe nga "gary nga nahimo alang sa gabii" ipasundayag.

05 sa 08

Mga mag-uuma Giya sa BASH - Pagpaanggid sa Mga Numero

Tutorial sa BASH - Pag-ihap sa Mga Numero.

Hangtud karon ang tanan nga mga pagtandi alang sa mga linya. Komosta ang pagtandi sa mga numero?

Ang labaw sa script nagpakita sa usa ka panig-ingnan sa pagtandi sa duha ka mga numero:

#! / bin / bash

a = 4
b = 5

kon [$ a = $ b]
unya
echo "4 = 5"
lain pa
echo "4 dili managsama 5"
fi

Ang pagtakda sa usa ka variable nga mahimong usa ka gidaghanon nga ibutang lamang kini nga walay marka sa mga kinutlo. Mahimo nimong ikomparar ang mga numero nga adunay usa ka marka nga parehas.

Gipili nako ang paggamit sa mosunod nga operator aron itandi ang duha ka mga numero:

Kung ang [$ a-eq $ b]

06 sa 08

Mga mag-uuma Giya sa BASH - Pagpaanggid sa Mga Numero

Tutorial sa BASH - Pag-ihap sa Mga Numero.

Kung gusto nimo itandi kung usa ka gidaghanon nga ubos pa kay sa lain nga numero imong magamit ang ubos kay sa operator (<). Sama sa mga kuldas kinahanglang makalingkawas ka sa ubos kay sa operator nga adunay slash. (\ <).

Ang mas maayo nga paagi sa pagtandi sa mga numero mao ang paggamit sa mosunod nga notasyon:

Pananglitan:

kung [$ a -lt $ b]

kung ang [$ a -le $ b]

kung ang [$ a -ge $ b]

kon [$ a -gt $ b]

07 sa 08

Mga mag-uuma Giya sa BASH - Pagpaanggid sa Mga Numero

Tutorial sa BASH - Pag-ihap sa Mga Numero.

Sa katapusan alang niini nga giya, kung gusto mo nga sulayan kung ang duha ka mga numero managlahi mahimo nimo gamiton ang mas ubos ug labaw kay sa mga tig-opera nga magkauban (<>) o -ne ingon sa mosunod:

kung ang [$ a <> $ b]

kung ang [$ a -ne $ b]

08 sa 08

Mga magsisibya Giya ngadto sa BASH - Pagtandi sa mga Operators - Sumaryo

Kon wala nimo makita ang unang tulo ka bahin niini nga giya imong makita kini pinaagi sa pag-klik sa mosunod nga mga link:

Sa sunod nga bahin sa giya akong pagatabonan ang arithmetic.