Panuntun Panuntun Kanggo BASH - Mbandingaken Iku

01 saka 08

Panuntun Panuntun Kanggo BASH - Mbandingaken Iku

BASH Tutorial - Banding Strings.

Ing sisih sadurunge tutorial BASH kita nyumurupi pernyataan bersyarat .

Panuntun kasebut rada dawa nanging mung nuduhake cara ngontrol aliran logika. Pandhuan iki nuduhake cara-cara sing beda kanggo sampeyan bisa mbandhingake variabel.

Gambar ing ndhuwur nuduhake tuladha pisanan ing pandhuan minggu iki:

#! / bin / bash

name1 = "gary"
name2 = "bob"

yen ["$ name1" = "$ name2"]
banjur
echo "the names match"
liyane
echo "jeneng ora cocog"
fi


Ing tulisan ing ndhuwur aku nemtokake rong variabel disebut name1 lan name2 lan ditugasake minangka nilai "gary" lan "bob". Minangka variabel sing ana ing antarane tanda petik kasebut diarani variabel string sing dadi luwih relevan nalika tutorial dadi.

Kabeh script ora cocog karo nilai $ name1 lan $ name2 lan yen padha cocog keluaran string "jeneng sing cocog" lan yen ora ngasilake senar "jeneng ora cocog".

Tanda kutip watara $ name1 lan $ name2 variabel wigati amarga yen nilai salah sijine ora ditetepake, skrip kasebut isih bisa digunakake.

Contone, yen $ name1 ora tau disetel, sampeyan bakal mbandingake "" karo "bob". Tanpa tandha kutip sampeyan bakal ngiwa karo = "Bob" sing jelas gagal.

Sampeyan uga bisa nggunakake! = Notasi kanggo nemtokake ora padha karo:

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

02 saka 08

Panduan Wiwitan Kanggo BASH - Membandingkan Strings

BASH Tutorial - Banding Strings.

Ing conto ing ndhuwur, tes kasebut mbandhingake rong rentetan sing padha lan nyuwun pitakon apa ora teka sadurunge bob ing alfabet?

Cetha jawabane ora.

Aksara kasebut ngenalake kurang saka operator (<). Minangka kurang saka operator uga digunakake kanggo redirection sampeyan kudu nylametake karo slash (\) kanggo iku tegese kurang saka kang kok ing script ndhuwur aku dibandhingake "$ name1" \ <"$ name2".

Ngelawan kurang saka temenan luwih akeh tinimbang. Tinimbang nggunakake \ .

Tuladhane

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

03 saka 08

Panduan Wiwitan Kanggo BASH - Membandingkan Strings

BASH Tutorial - Banding Strings.

Yen sampeyan pengin nyoba manawa variabel nduweni nilai sampeyan bisa nggunakake test ing ngisor iki:

yen [-n $ name2]

Ing skrip ndhuwur aku wis nguji apa $ name2 wis diwenehi nilai lan yen ora pesen "Ora ana bob, ora ana bob katon".

04 saka 08

Panduan Wiwitan Kanggo BASH - Membandingkan Strings

BASH Tutorial - Banding Strings.

Ing slide sadurunge kita nliti apa variabel wis disetel utawa ora. Kadhangkala variabel bisa ditemtokake nanging bisa uga ora duwe nilai.

Kayata:

name1 = ""

Kanggo nyoba manawa variabel nduweni nilai utawa dudu (umpamane wis dawa nol) gunakake -z minangka berikut:

yen [-z $ name1]

Ing script ndhuwur aku wis ngeset $ name1 menyang senar nol dawa lan banjur dibandhingake nganggo -z. Yen $ name1 punika setunggaling nol, pesen "gary sampun medal sonten dalu" badhe dipuntampilaken.

05 saka 08

Panuntun Panuntun Kanggo BASH - Membanding Nomer

Tutorial BASH - Mbitung Nomer.

Mangkono adoh kabeh bandinge wis kanggo strings. Kepiye babagan mbandhingake angka?

Tulisan ing ndhuwur nuduhake conto mbandhingake rong nomer:

#! / bin / bash

a = 4
b = 5

yen [$ a = $ b]
banjur
echo "4 = 5"
liyane
echo "4 ora padha karo 5"
fi

Kanggo nyetel variabel dadi nomer mung nglebokake tandha petik kasebut. Sampeyan banjur bisa mbandhingake angka kanthi tandha sing padha.

Aku luwih seneng nggunakake operator ing ngisor iki kanggo mbandhingake rong nomer:

Yen [$ a -eq $ b]

06 saka 08

Panuntun Panuntun Kanggo BASH - Membanding Nomer

Tutorial BASH - Mbitung Nomer.

Yen sampeyan pengin mbandhingake manawa nomer kurang saka nomer liyane sampeyan bisa nggunakake kurang saka operator (<). Karo strings sampeyan kudu lolos operator kurang saka karo slash. (\ <).

Cara sing luwih apik kanggo mbandhingake angka yaiku nggunakake notasi ing ngisor iki:

Tuladhane:

yen [$ a -lt $ b]

yen [$ a -le $ b]

yen [$ a -ge $ b]

yen [$ a -gt $ b]

07 saka 08

Panuntun Panuntun Kanggo BASH - Membanding Nomer

Tutorial BASH - Mbitung Nomer.

Pungkasan, kanggo panuntun iki, yen sampeyan pengin nyoba manawa rong nomer beda sampeyan bisa nggunakake salah siji utawa kurang saka operator bebarengan (<>) utawa -ne kaya ing ngisor iki:

yen [$ a <> $ b]

yen [$ a -ne $ b]

08 saka 08

Panuntun Panuntun Kanggo BASH - Operator Perbandingan - Ringkasan

Yen sampeyan ora kejawab pandhuan kasebut, sampeyan bisa nemokake kanthi ngeklik pranala ing ngisor iki:

Ing sisih sabanjure panuntun aku bakal ngliputi aritmetika.