Conas Coinníollacha Tástála a Úsáid Laistigh de Script Bash

Is féidir an t-ordú tástála a úsáid ar an líne ordaithe Linux chun eilimint amháin a chur i gcomparáid lena chéile ach go n-úsáidtear sé níos coitianta i scripteanna bhlaosc BASH mar chuid de ráitis choinníollach a rialaíonn loighic agus sreabhadh an chláir.

Sampla Bunúsach

Is féidir leat na horduithe seo a thriail trí fhuinneog teirminéil a oscailt .

tástáil 1 -eq 2 && macalla "yes" || macalla "gan"

Is féidir an t-ordú thuas a bhriseadh síos mar seo a leanas:

Go bunúsach, tá an t-ordú i gcomparáid idir 1 agus 2 agus comhoiríonn siad an ráiteas "tá" macalla a fhorghníomhú a thaispeánann "tá" agus mura gcomhlíonann siad an ráiteas "no" macalla a fhorghníomhófar a thaispeánann "ní".

Comparáid Uimhreacha

Má tá tú ag comparáid d'eilimintí a phléann mar uimhreacha is féidir leat úsáid a bhaint as na hoibreoirí comparáide seo a leanas:

Samplaí:

tástáil 1 -eq 2 && macalla "yes" || macalla "gan"

(Taispeánann "Níl" ar an scáileán toisc nach ionann 1 agus 2)

tástáil 1 -ge 2 & e macalla "yes" || macalla "gan"

(Taispeánann "Níl" ar an scáileán toisc nach bhfuil 1 níos mó ná cothrom le 2)

tástáil 1 -gt 2 && echo "yes" || macalla "gan"

(Taispeánann "Níl" ar an scáileán toisc nach bhfuil 1 níos mó ná 2)

tástáil 1 -le 2 agus clóigh "yes" || macalla "gan"

(taispeántais "tá" go dtí an scáileán toisc go bhfuil 1 níos lú ná nó cothrom le 2)

tástáil 1 -lt 2 && macalla "yes" || macalla "gan"

(taispeántais "tá" go dtí an scáileán toisc go bhfuil 1 níos lú ná nó cothrom le 2)

tástáil 1 -nn 2 agus clóigh "yes" || macalla "gan"

(taispeántais "tá" ar an scáileán toisc nach ionann 1 agus 2)

Comparáid le Téacs

Má tá tú ag comparáid d'eilimintí a phlé mar shrianta is féidir leat na hionadóirí comparáide seo a leanas a úsáid:

Samplaí:

tástáil "string1" = "string2" && echo "yes" || macalla "gan"

(taispeántais "Níl" ar an scáileán toisc nach ionann "string1" "string2")

tástáil "string1"! = "string2" && echo "yes" || macalla "gan"

(taispeántais "tá" go dtí an scáileán toisc nach ionann "string1" "string2")

tástáil -n "string1" && echo "yes" || macalla "gan"

(taispeántais "tá" go dtí an scáileán toisc go bhfuil "teaghrán1" i bhfad níos airde ná nialas)

tástáil -z "string1" && echo "yes" || macalla "gan"

(Taispeánann "Níl" ar an scáileán toisc go bhfuil "teaghrán1" fad sreang níos mó ná nialas)

Comparáid Comhaid

Má tá tú i gcomparáid le comhaid is féidir leat na hionadóirí comparáide seo a leanas a úsáid:

Samplaí:

tástáil / cosán / go / file1 -n / path / to / file2 && echo "yes"

(Má tá comhad1 níos nua ná comhad2 ansin taispeánfar an focal "tá")

tástáil -e / path / to / file1 && echo "yes"

(má tá comhad1 ann, taispeánfar an focal "tá")

tástáil -O / path / to / file1 && echo "yes"

(má tá comhad agat 1 ansin taispeánfar an focal "tá")

Téarmaíocht

Comparáid le Coinníollacha Illeibhéil

Go dtí seo tá gach rud ag comparáid idir rud amháin i gcoinne a chéile ach cad é más mian leat dhá choinníollacha a chur i gcomparáid.

Mar shampla, má tá 4 chosa ag ainmhí agus téann sé "moo" is dócha gur bó é. Níl ort ach seiceáil ar feadh 4 chosa ráthaíocht go bhfuil bó agat ach seiceáil an fhuaim a dhéanann sé cinnte.

Chun an dá choinníoll a thástáil ag an am céanna bain úsáid as an ráiteas seo a leanas:

tástáil 4 -eq 4 -a "moo" = "moo" && echo "is bó" || macalla "nach bó é"

Is í an chuid lárnach anseo an -a a seasann agus a.

Tá bealach níos fearr agus níos coitianta a úsáidtear chun an tástáil chéanna a chomhlíonadh agus is é seo a leanas:

tástáil 4 -eq 4 && tástáil "moo" = "moo" && echo "is bó" || macalla "nach bó é"

Is é an tástáil eile a d'fhéadfá a dhéanamh ná comparáid a dhéanamh idir dhá ráiteas agus más rud é fíorchur aschur teaghrán. Mar shampla, más mian leat a sheiceáil go bhfuil comhad atá ainmnithe "file1.txt" ann nó má tá comhad ar a dtugtar "file1.doc" ann, is féidir leat an t-ordú seo a leanas a úsáid

tástáil -e file1.txt -o -e file1.doc && echo "file1 exists" || macalla "níl comhad1 ann"

Is í an chuid lárnach anseo an -o atá le haghaidh nó.

Tá bealach níos fearr agus níos coitianta a úsáidtear chun an tástáil chéanna a chomhlíonadh agus is é seo a leanas:

tástáil -e file1.txt || test -e file1.doc && echo "file1 exists" || macalla "níl comhad1 ann"

An Teachtaireacht Tástála a dhíchur

Ní gá duit an tástáil focal a úsáid chun comparáid a dhéanamh. Is é gach ní mór duit a dhéanamh ná an ráiteas i lúibíní cearnacha a leanas a chur isteach mar seo a leanas:

[-e file1.txt] && echo "file1 exists" || macalla "níl comhad1 ann"

Ciallaíonn an [agus] go bunúsach mar an gcéanna le tástáil.

Anois tá a fhios agat gur féidir leat feabhas a chur ar chomparáid a dhéanamh ar choinníollacha éagsúla mar seo a leanas:

[4 -eq 4] && ["moo" = "moo"] && é "bó is é" || macalla "nach bó é"

[-e file1.txt] || [-e file1.doc] && echo "file1 exists" || macalla "níl comhad1 ann"

Achoimre

Tá an t-ordú tástála níos úsáidí i scripteanna toisc gur féidir leat luach athróg amháin a thástáil i gcoinne ceann eile agus sreabhadh an chláir rialaithe. Ar an líne ordaithe caighdeánach, is féidir leat é a úsáid chun tástáil a dhéanamh cibé an bhfuil comhad ann nó