Jagora na farko zuwa BASH - Daidaita Abubuwa

01 na 08

Jagora na farko zuwa BASH - Daidaita Abubuwa

BASH Tutorial - Kwatanta kirtani.

A cikin ɓangaren baya na BASH tutorial mun dubi maganganun kwakwalwa .

Wannan jagorar ya dade sosai amma kawai ya nuna yadda za a sarrafa kwafin basira. Wannan jagorar ya nuna hanyoyi daban-daban wanda zaka iya kwatanta masu canji.

Hoton da ke sama ya nuna misali na farko a jagorar wannan mako:

#! / bin / bash

name1 = "gary"
name2 = "bob"

idan ["$ name1" = "$ name2"]
to,
kunna "sunayen wasan"
wasu
Kira "sunayen ba su dace ba"
fi


A cikin rubutun da ke sama an bayyana na biyu masu canji da aka kira suna1 da suna2 kuma sun sanya musu dabi'un "gary" da "bob". Yayinda masu rikitarwa suna cikin alamomi a tsakanin alamomi ana kiran su layi mai rikitarwa wanda ya zama mafi dacewa kamar yadda tutorial ke ci gaba.

Kowane rubutun yana gwada darajar $ name1 da $ name2 kuma idan sun dace da fitarwa da kirtani "sunayen wasan" kuma idan ba su fito da kirtani "sunayen ba su dace ba".

Alamomin da aka zance a kusa da $ name1 da $ name2 masu mahimmanci suna da muhimmanci saboda idan an ba da darajar kowanne daga cikinsu sai rubutun zai ci gaba.

Alal misali idan an ba da sunan $ name1 sa'an nan kuma za ku gwada "" tare da "bob". Ba tare da alamomi ba, za a bari tare da = "bob" wanda ya kasa kasa.

Hakanan zaka iya amfani da! = Sanarwar don ayyana ba daidai ba kamar haka:

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

02 na 08

Jagora na farawa zuwa BASH - Nuna gwadawa

BASH Tutorial - Kwatanta kirtani.

A cikin misali na sama misali gwajin ya kwatanta nau'in igiya guda biyu kuma yayi tambaya tambaya ta zo kafin bob a cikin haruffa?

Babu shakka amsar ita ce a'a.

Rubutun ya gabatar da kasa da mai aiki (<). Yayin da aka yi amfani da ƙasa da mai amfani da madaidaici dole ne ka guje shi tare da slash (\) don ma'anar ƙasa da abin da ya sa a rubutun da ke sama na kwatanta "$ name1" \ <"$ name2".

Kishiyar ƙasa da shi ya fi girma. Maimakon amfani da <.

Misali

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

03 na 08

Jagora na farawa zuwa BASH - Nuna gwadawa

BASH Tutorial - Kwatanta kirtani.

Idan kana so ka gwada ko madadin yana da darajar zaka iya amfani da gwaji na gaba:

idan [-n $ name2]

A cikin rubutun da ke sama na gwada ko $ name2 an ba da darajar kuma idan ba shine sakon "Babu buguwa, babu bob ya bayyana".

04 na 08

Jagora na farawa zuwa BASH - Nuna gwadawa

BASH Tutorial - Kwatanta kirtani.

A cikin zubin da muka wuce mun rufe ko an saita m ko a'a. Wasu lokuta ko da yake mai yiwuwa ya kasance an saita amma yana iya ba da darajar.

Alal misali:

name1 = ""

Don gwada ko mai canza yana da darajar ko ba (watau yana da zabin zero) -z kamar haka:

idan [-z $ name1]

A cikin rubutun da ke sama an saita $ name1 zuwa zangon zauren zinare sa'an nan kuma idan aka kwatanta ta ta amfani da -z. Idan $ name1 ba kome ba ne a tsawon saƙo "za a bayyana garyar ga maraice".

05 na 08

Jagora na farko zuwa BASH - Daidaita Lissafi

BASH Tutorial - Daidaita Lissafi.

Ya zuwa yanzu duk kwatancen sun kasance don kirtani. Me game da kwatanta lambobi?

Wannan rubutun na sama ya nuna misali na kwatanta lambobi biyu:

#! / bin / bash

a = 4
b = 5

idan [$ a = $ b]
to,
Kira "4 = 5"
wasu
echo "4 ba daidai ba 5"
fi

Don saita m don zama lamba kawai saita shi ba tare da alamomi ba. Zaka iya kwatanta lambobi tare da alamar daidai.

Na fi so in yi amfani da afaretan mai aiki don kwatanta lambobi biyu:

Idan [$ a -eq $ b]

06 na 08

Jagora na farko zuwa BASH - Daidaita Lissafi

BASH Tutorial - Daidaita Lissafi.

Idan kana so ka kwatanta ko lambar ta kasa da wani lambar zaka iya amfani da ƙasa da mai aiki (<). Kamar yadda kirtani ya kamata ku tsira daga ƙasa da mai aiki tare da slash. (\ <).

Hanyar da ta fi dacewa ta kwatanta lambobi shi ne amfani da bayanan nan a maimakon:

Misali:

idan [$ a -lt $ b]

idan [$ a -le $ b]

idan [$ a -ge $ b]

idan [$ a -gt $ b]

07 na 08

Jagora na farko zuwa BASH - Daidaita Lissafi

BASH Tutorial - Daidaita Lissafi.

A ƙarshe don wannan jagorar, idan kuna so ku gwada ko lambobi biyu sun bambanta za ku iya amfani da ko dai ta ƙasa da kuma mafi girma fiye da masu aiki tare (<>) ko -ne kamar haka:

idan [$ a <> $ b]

idan [$ a -ne $ b]

08 na 08

Jagora na farko zuwa BASH - Masu haɗaka kwatankwacin - A taƙaice

Idan ka rasa sassa na farko na wannan jagorar za ka iya samun su ta danna kan wadannan hanyoyin:

A cikin ɓangare na gaba na jagorar zan rufe nau'in lissafi.