Mar a chleachdas tu teisteanas deuchainn taobh a-staigh sgriobt Bash

Faodar an t-òrdugh deuchainn a chleachdadh air loidhne-àithne Linux gus coimeas a dhèanamh eadar aon eileamaid an aghaidh fear eile ach tha e nas cumanta air a chleachdadh ann an sgriobtaichean sguab BASH mar phàirt de na h-aithrisean co - rèiteach a tha a 'riaghladh rèiteachadh agus sruth a' phrògraim.

Eisimpleir bhunasach

Faodaidh tu na h-òrdughan sin a fheuchainn dìreach le bhith fosgladh uinneag deireannach .

deuchainn 1 -eq 2 && echo "yes" || echo "no"

Faodar an àithne gu h-àrd a bhriseadh sìos mar a leanas:

Gu dearbh, tha an t-òrdugh a 'dèanamh coimeas eadar 1 gu 2 agus bidh iad a' maidseadh an aithris "tha" mac-samhail air a chur gu bàs a tha a 'taisbeanadh "tha" agus mura bi iad a' freagairt ris an aithris "no" mac-samhail air a chur gu bàs a tha a 'taisbeanadh "chan eil".

A 'coimeas àireamhan

Ma tha thu a 'dèanamh coimeas eadar eileamaidean a tha a' leantainn àireamhan mar as urrainn dhut na coimeasan coimeas a leanas a chleachdadh:

Eisimpleirean:

deuchainn 1 -eq 2 && echo "yes" || echo "no"

(taisbeanaidhean "chan eil" air an sgrìn seach nach eil 1 co-ionnan 2)

deuchainn 1 -ge 2 && echo "yes" || echo "no"

(thaisbeanaidhean "chan eil" air an sgrìn oir chan eil 1 nas motha no co-ionann ri 2)

deuchainn 1-gt 2 && echo "yes" || echo "no"

(thaisbeanaidhean "chan eil" air an sgrìn oir chan eil 1 nas motha na 2)

deuchainn 1 -le 2 && echo "yes" || echo "no"

(a 'taisbeanadh "tha" ris an sgrion seach gu bheil 1 nas lugha na no co-ionann ri 2)

deuchainn 1 -lt 2 && echo "yes" || echo "no"

(a 'taisbeanadh "tha" ris an sgrion seach gu bheil 1 nas lugha na no co-ionann ri 2)

deuchainn 1 -ne 2 agus & echo "se" echo "no"

(a 'taisbeanadh "tha" ris an sgrion seach nach eil 1 co-ionnan 2)

Eadar-theangachadh Teacsa

Ma tha thu a 'dèanamh coimeas eadar eileamaidean a tha a' cumail sùil air na teintean as urrainn dhut na coimeasan coimeas a leanas a chleachdadh:

Eisimpleirean:

deuchainn "string1" = "string2" && echo "yes" || echo "no"

(taisbeanaidhean "chan eil" air an sgrìn oir chan eil "string1" co-ionnan ri "string2")

deuchainn "string1"! = "string2" && echo "yes" || echo "no"

(a 'taisbeanadh "tha" ris an sgrion a chionn' s nach eil "string1" co-ionnan "string2")

deuchainn -n "string1" && echo "yes" || echo "no"

(a 'taisbeanadh "tha" ris an sgrion a chionn' s gu bheil "sreath1" fada nas fhaide na neoni)

test -z "string1" && echo "yes" || echo "no"

(taisbeanaidhean "chan eil" air an sgrìn oir tha "string1" fada nas fhaide na neoni)

A 'Comharrachadh Fhaidhlichean

Ma tha thu a 'dèanamh coimeas eadar faidhlichean, faodaidh tu na h-obraichean coimeas a leanas a chleachdadh:

Eisimpleirean:

deuchainn / slighe / gu / file1 -n / path / to / file2 && echo "yes"

(Ma tha file1 nas ùire na file2 bidh an fhacal "tha" air a thaisbeanadh)

deuchainn -e / path / to / file1 && echo "yes"

(ma tha file1 ann bidh am facal "tha" air a thaisbeanadh)

deuchainn -O / path / to / file1 && echo "yes"

(ma tha file1 agad fhèin, tha am facal "tha" air a thaisbeanadh)

Briathrachas

A 'coimeas iomadh teirm

Gu ruige seo tha a h-uile dad air a bhith a 'dèanamh coimeas eadar aon rud an aghaidh fear eile ach dè ma tha thu airson coimeas a dhèanamh eadar dà chùmhnant.

Mar eisimpleir, ma tha 4 cas air beathach agus a 'dol "moo", is dòcha gur e mart a th' ann. Chan eil ach a bhith a 'coimhead airson 4 casan a' toirt gealltanas gu bheil bò agad ach a bhith a 'sgrùdadh na fuaim a nì e gu cinnteach.

Gus an dà chùis a dhearbhadh aig an aon àm cleachd an aithris a leanas:

deuchainn 4 -eq 4 -a "moo" = "moo" && echo "is e mart" mac-mac "chan e mart a th 'ann"

Is e a 'phrìomh phàirt an-seo an -a a tha a' seasamh agus.

Tha dòigh nas fheàrr agus nas cumanta air an aon dheuchainn a dhèanamh agus tha sin mar a leanas:

deuchainn 4 -eq 4 && deuchainn "moo" = "moo" && echo "is e mart" mac-mac "chan e mart a th 'ann"

Is e deuchainn eile a dh 'fhaodadh tu a dhèanamh a bhith a' dèanamh coimeas eadar dà aithris agus ma tha an dà chuid fìor thionndadh sreang. Mar eisimpleir, ma tha thu airson dearbhadh gu bheil faidhle air a bheil "file1.txt" ann no faidhle ann am faidhle "file1.doc", faodaidh tu an òrdugh a leanas a chleachdadh

test -e file1.txt -o -e file1.doc && echo "file1 exists" | mac-samhail "file1 does not exist"

Is e am prìomh phàirt an seo an -o a tha a 'seasamh airson no.

Tha dòigh nas fheàrr agus nas cumanta air an aon dheuchainn a dhèanamh agus tha sin mar a leanas:

deuchainn -e file1.txt | test -e file1.doc && echo "file1 exists" | mac-samhail "file1 does not exist"

A 'cur às de na faclan-luirg deuchainn

Chan fheum thu an deuchainn fhaclan a chleachdadh gus an coimeas a dhèanamh. Feumaidh a h-uile nì a tha agad a-steach an aithris ann an camagan ceàrnach mar a leanas:

[-e file1.txt] && echo "file1 exists" | mac-samhail "file1 does not exist"

Tha an [agus] a 'ciallachadh an aon rud ri deuchainn.

A-nis tha fios agad gur urrainn dhut leasachadh a dhèanamh air coimeas eadar ioma-chùmhnant mar a leanas:

[4 -eq 4] && ["moo" = "moo"] && echo "it is a cow" || mac-mac "chan e mart a th 'ann"

[-e file1.txt] | [-e file1.doc] && echo "file1 exists" | mac-samhail "file1 does not exist"

Geàrr-chunntas

Tha an t-òrdugh deuchainn nas fheumail ann an sgriobtaichean oir is urrainn dhut dearbhadh luach aon caochlaideach an aghaidh fear eile agus sruth a 'phrògraim riaghlaidh. Air an loidhne àithne coitcheann, faodaidh tu a chleachdadh gus dearbhadh a bheil file ann no ma tha