01 ta '08
Gwida għall-Bidu għal BASH - Tqabbil ta 'l-Oġġetti
Fil-parti ta 'qabel tat-tutorja BASH ħarisna dikjarazzjonijiet kondizzjonali .
Dik il-gwida kienet twila ħafna iżda verament wera biss kif tikkontrolla l-fluss tal-loġika. Din il-gwida turi l-modi differenti li biha tista 'tqabbel il-varjabbli.
L-istampa ta 'hawn fuq turi l-ewwel eżempju fil-gwida ta' din il-ġimgħa:
#! / bin / bash
name1 = "gary"
name2 = "bob"jekk ["$ name1" = "$ name2"]
allura
echo "l-ismijiet jaqblu"
inkella
echo "l-ismijiet ma jaqblux"
fi
Fl-iskritt ta 'hawn fuq iddefinijt żewġ varjabbli msejħa name1 u name2 u assenjahom il-valuri "gary" u "bob". Peress li l-varjabbli jinsabu bejn il-virgoletti jissejħu varjabbli tas-sekwenza li ssir aktar rilevanti hekk kif jibda l-tutorja.
L-iskrittura kollha hija tqabbel il-valur ta '$ name1 u $ name2 u jekk jaqblu mal-ħruġ is-sekwenza "l-ismijiet jaqblu" u jekk ma joħorġux is-sekwenza "l-ismijiet ma jaqblux".
Il-virgoletti madwar il-varjabbli $ name1 u $ name2 huma importanti għaliex jekk il-valur ta 'xi wieħed minnhom ma ġiex stabbilit allura l-iskrittra xorta sejjer jaħdem.
Per eżempju jekk $ name1 qatt ma ġie stabbilit allura inti tkun qed tqabbel "ma '" bob ". Mingħajr il-virgoletti inti tkun titħalla b '"bob" li jonqos b'mod ċar.
Tista 'wkoll tuża! = Notazzjoni biex tiddefinixxi mhux ugwali għal kif ġej:
jekk ["$ name1"! = "$ name2"]
02 ta '08
Gwida għall-Bidu għal BASH - Tqabbil ta 'Strings
Fl-eżempju ta 'hawn fuq it-test iqabbel l-istess żewġ kordi u jistaqsi l-mistoqsija li ma jidħlux qabel ma bob fl-alfabett?
Ovvjament it-tweġiba mhix.
L-iskript jintroduċi inqas mill-operatur (<). Peress li l-inqas mill-operatur jintuża wkoll għal direzzjoni mill-ġdid għandek taħrab minnha bil-linja mmejla (\) għax tfisser inqas minn dik ir-raġuni għaliex fl-iskritt hawn fuq qabblu "$ name1" \ <"$ name2".
L-oppost ta 'inqas minn huwa ovvjament ikbar minn. Minflok ma tuża \
Pereżempju
jekk ["$ name1" \> "$ name2"]
03 ta '08
Gwida għall-Bidu għal BASH - Tqabbil ta 'Strings
Jekk trid tittestja jekk varjabbli għandhiex valur tista 'tuża t-test li ġej:
jekk [-n $ isem2]
Fl-iskritt ta 'hawn fuq għedt jekk l-isem $ 2 ngħatax valur u jekk ma jkunx il-messaġġ "M'hemmx bob, qatt ma kien hemm bob".
04 ta '08
Gwida għall-Bidu għal BASH - Tqabbil ta 'Strings
Fuq il-pjastra tal-passat aħna tkopri jekk varjabbli ġietx stabbilita jew le. Kultant għalkemm varjabbli setgħet ġiet issettjata imma jista 'ma jkollhiex valur.
Per eżempju:
name1 = ""
Biex jiġi ttestjat jekk varjabbli għandux valur jew le (jiġifieri għandu tul ta 'żero) uża kif ġej:
jekk [-z $ name1]
Fl-iskritt t'hawn fuq issettja $ name1 għal sekwenza tat-tul taż-żero u mbagħad qabblu billi tuża -z. Jekk l-isem $ 1 huwa zero fit-tul il-messaġġ "gary spiċċa għall-lejla" se jintwera.
05 ta '08
Gwida għall-Bidu għal BASH - Numri ta 'Tqabbil
S'issa l-paraguni kollha kienu għall-kordi. Xi ngħidu dwar in-numri ta 'paragun?
L-iskritt ta 'hawn fuq juri eżempju ta' tqabbil ta 'żewġ numri:
#! / bin / bash
a = 4
b = 5jekk [$ a = $ b]
allura
eku "4 = 5"
inkella
eku "4 ma tmissx 5"
fi
Biex tistabbilixxi varjabbli bħala numru sempliċement issettjaha mingħajr virgoletti. Tista 'mbagħad tqabbel in-numri b'sinjal ugwali.
Jiena nippreferi madankollu li tuża l-operatur li ġej biex tqabbel żewġ numri:
Jekk [$ a -eq $ b]
06 ta '08
Gwida għall-Bidu għal BASH - Numri ta 'Tqabbil
Jekk trid tqabbel jekk numru huwiex inqas minn numru ieħor tista 'tuża inqas minn operatur (<). Bħal fil-kordi għandek taħrab mill-inqas minn operatur bi slash. (\ <).
Mod aħjar ta 'tqabbil tan-numri huwa li minflok tintuża n-notazzjoni li ġejja:
- Inqas minn -lt
- Inqas minn jew ugwali għal -le
- Aktar minn -gt
- Aktar minn jew ugwali għal -ge
Pereżempju:
jekk [$ a -lt $ b]
jekk [$ a -le $ b]
jekk [$ a -ge $ b]
jekk [$ a -gt $ b]
07 ta '08
Gwida għall-Bidu għal BASH - Numri ta 'Tqabbil
Finalment għal din il-gwida, jekk trid ittestja jekk żewġ numri humiex differenti tista 'tuża jew inqas minn u akbar minn operaturi flimkien (<>) jew -ne kif ġej:
jekk [$ a <> $ b]
jekk [$ a -ne $ b]
08 ta '08
Gwida għall-Bidu għal BASH - Operaturi ta 'Tqabbil - Sommarju
Jekk tlift l-ewwel tliet partijiet ta 'din il-gwida tista' ssibhom billi tikklikkja fuq il-links li ġejjin:
Fil-parti li jmiss tal-gwida se nkopri l-aritmetika.