Ka taea te whakamahi i te tono whakamatautau ki te raina whakahau Linux hei whakataurite i tetahi huanga ki tetahi atu engari kei te nuinga o te whakamahi i roto i nga tuhinga tuhi BASH hei wāhanga o nga korero whaimana e whakahaere ana i te aronga me te rere o te hōtaka.
He Tauira Tuatahi
Ka taea e koe te whakamatautau i enei whakahau na te whakatuwhera i te matapihi matatau .
whakamātautau 1 -eq 2 & echo "ae" || koki "kore"
Ka taea te pakaru te whakahau i runga ake nei:
- te whakamatautau - tenei e hiahia ana koe ki te mahi i te whakataurite
- 1 - te tuatahi o nga mea ka whakatauhia e koe
- -eq (pehea koe e whakarite ana, i tenei keehi, kei te whakamatautau koe mehemea he rite tetahi tau ki tetahi atu)
- 2 - te huānga e whakaata ana ano koe i te huānga tuatahi
- & - - whakahaere i te korero e whai ake nei mehemea he pono te hua
- koki "ae" - te whakahau ki te rere ki te whakahoki pono
- || - Whakahaerehia te korero e whai ake nei mehemea he teka te hua
- echo "no" - te whakahau ki te rere mehemea ka hoki mai te whakatau
Ko te tikanga, ko te whakahau e whakataurite ana ki te 1 ki te 2, ka rite hoki te korero ki te kupu "yes" e whakaatu ana i te "ae" me te kore e rite ki te korero koki "kahore" e whakaatu ana "no".
Te whakataurite i nga Tauemi
Mena kei te whakataurite koe i nga huānga e puta ana hei tau, ka taea e koe te whakamahi i nga kaiwhakahaere whakarite e whai ake nei:
- -eq - he uara 1 te uara rite 2
- -ge - he uara 1 nui atu i te uara 2 ranei
- -gt - he uara 1 nui ake i te uara 2
- -le - he uara 1 iti iho i te rite ranei ki te uara 2
- -lt - he uara 1 iti iho i te uara 2
- -e - kaore e taurite ana 1 e kore te taurite 2
Hei tauira:
whakamātautau 1 -eq 2 & echo "ae" || koki "kore"
(nga whakaaturanga "no" ki te mata no te mea kaore i te rite te 1)
whakamātautau 1 -ge 2 & echo "ae" || koki "kore"
(nga whakaaturanga "no" ki te mata no te mea ehara i te nui atu te rite ki te 2)
whakamatau 1 -gt 2 & echo "ae" || koki "kore"
(whakaatu "no" ki te mata no te mea ehara i te nui atu i te 2)
whakamātautau 1-2 me te koki "ae" || koki "kore"
(whakaatuhia "ae" ki te mata no te mea he iti iho i te kotahi te rite ki te 2)
test 1 -lt 2 & echo "yes" || koki "kore"
(whakaatuhia "ae" ki te mata no te mea he iti iho i te kotahi te rite ki te 2)
whakamātautau 1 -ne 2 & echo "ae" || koki "kore"
(he whakaatu "ae" ki te mata no te mea kaore i te rite te 1)
Te whakataurite i te Kuputuhi
Mena kei te whakataurite koe i nga huānga ka puta i nga aho ka taea e koe te whakamahi i nga kaiwhakahaere whakarite e whai ake nei:
- = - te aho 1 te taura tuarua 2
- ! = - he aho 1 rere ke ki te aho 2
- -n - he roa te roa o te aho i te 0
- -z - ko te roa roa 0
Hei tauira:
test "string1" = "string2" & echo "ae" || koki "kore"
(whakaatu "no" ki te mata no te mea kaore te "string1" e rite ana "string2")
test "string1"! = "string2" & echo "ae" || koki "kore"
(whakaatu "ae" ki te mata no te mea kaore te "string1" e rite ana "string2")
test -n "string1" & echo "ae" || koki "kore"
(whakaatu "yes" ki te mata no te mea he "string1" he aho roa atu i te kore)
test -z "string1" & echo "ae" || koki "kore"
(whakaatu "no" ki te mata na te mea "string1" he roa te roa o te aho neke atu i te kore)
Te whakataurite ana i nga Kōnae
Mena kei te whakataurite koe i nga kōnae ka taea e koe te whakamahi i nga kaiwhakahaere whakarite e whai ake nei:
- -ef - He rite tonu nga raupapa o nga kōnae me nga nama taurangi (he rite taua kōnae)
- -nt - Ko te kōnae tuatahi tuatahi atu i te kōnae tuarua
- -ot - Ko te kōnae tuatahi kei mua atu i te tuarua o nga kōnae
- -b - Kei te noho te kōnae, he poraka motuhake hoki
- -c - Kei te noho te kōnae, he mea tino pai hoki
- -d - Kei te noho te kōnae me te whaiaronga
- -e - Kei te noho te kōnae
- -e - Kei te noho te kōnae, he kōnae auau hoki
- -g - Kei te noho te kōnae, kei a ia te tau o te rōpū kua tohua
- -G - Kei te noho te kōnae me te rangatira na te rōpū kaiwhakamahi
- -h - Kei te noho te kōnae, he hononga tohu hoki
- -k - Kei te noho te kōnae, kei te tautuhi i tana mokowhiti
- -L - He rite ano ki -h
- -O - Kei te noho te kōnae kei a koe te rangatira
- -p - Kei te noho te kōnae, he paihana pai hoki
- -r - Kei te noho te kōnae, ka taea te reta
- -s - Kei te noho te kōnae, kei te rahi te rahi atu i te kore
- -S - Kei te noho te kōnae, he turanga hoki
- -t - Kua whakatuwheratia te kaituhi kōnae ki runga i te papa
- -u - Kei te noho te kōnae, kua tautuhia te bit-kaiwhakamahi-id
- -w - Kei te noho te kōnae, he pai hoki
- -x - Kei te noho te kōnae, ka taea te whakahaere
Hei tauira:
test / path / to / file1 -n / path / to / file2 & echo "ae"
(Ki te mea hou atu te file1 i te file2, ka whakaaturia te kupu "ae")
whakamatautau -e / ara / ki / file1 & echo "ae"
(ki te waiho te kōnae1 kei te whakaatu te kupu "ae" ka whakaaturia)
test -O / path / to / file1 & echo "ae"
(ki te mea kei a koe te kōnae1 ka whakaatuhia te kupu "ae" ")
Te Terminology
- Poraka Motuhake - Ko te kōnae he poraka poraka e tohu ana kei te pānuihia te raraunga i roto i nga poraka o nga tarai. He maha nga momo pene hei tauira pakeke.
- He mea tino pai - Ka mahihia te kōnae i te wa e tuhi ai koe ki a ia, a, ko te nuinga o te whakaaro he putea raupapa
Te whakataurite i nga Mahinga Maha
I tenei wa kua whakaritea nga mea katoa ki tetahi atu, engari ki te hiahia koe ki te whakarite i nga tikanga e rua.
Hei tauira, mehemea he 4 nga waewae o te kararehe, ka haere "moo" he kau. Ko te titiro noa mo nga waewae e 4 kaore i te whakautu he poaka taau, engari ko te tirotiro i te tangi e mahia ana.
Hei whakamatautau i nga tikanga e rua ka whakamahi i te korero o muri:
test 4 -eq 4 -a "moo" = "moo" & echo "he kau" || tangi "ehara i te kau"
Ko te wahi matua i konei ko te -a e tu ana me te.
He pai ake te whakamahi i te whakamatautau kotahi, a, ko te mea e whai ake nei:
whakamātautau 4 -eq 4 & test "moo" = "moo" & echo "he kau" || tangi "ehara i te kau"
Ko tetahi atu whakamatautau ka hiahia pea koe ki te whakarite i nga korero e rua, me te mea he tohu pono te aho. Hei tauira, ki te hiahia koe ki te tirotiro kei te noho tetahi kōnae e huaina ana ko "file1.txt" kei te noho ranei tetahi kōnae e karangatia ana "file1.doc" ka taea te whakamahi i te whakahau e whai ake nei
test -e file1.txt -o -e file1.doc & echo "file1 kei roto" || kaore te kupu "file1 i te tīariari"
Ko te wahi matua i konei ko te -o tera e tu ana mo te.
He pai ake te whakamahi i te whakamatautau kotahi, a, ko te mea e whai ake nei:
whakamatautau -e file1.txt || test -e file1.doc & echo "file1 kei roto" || kaore te kupu "file1 i te tīariari"
Te whakaiti i te Kuputuhi Whakamātautau
Kaore e tino hiahia koe ki te whakamahi i te whakamatautau kupu hei mahi i te whakataurite. Ko nga mea katoa ka mahia e koe ko te korero i roto i nga karaka tapawha e whai ake nei:
[-e file1.txt] & echo "file1 kei roto" || kaore te kupu "file1 i te tīariari"
Ko te tikanga [me] te tikanga rite te whakamatautau.
Na e mohio ana koe ka taea e koe te whakapai ake i te whakataurite i nga tikanga maha e whai ake nei:
[4 -eq 4] & ["moo" = "moo"] & echo "he kau" || tangi "ehara i te kau"
[-e file1.txt] || [-e file1.doc] & echo "file1 kei roto" || kaore te kupu "file1 i te tīariari"
Whakarāpopoto
Ko te whakahau whakamatautau he pai ake i roto i nga tuhinga mo te mea ka taea e koe te whakamatautau i te uara o tetahi taurangi ki tetahi atu waa rererangi. I runga i te raupapa paerewa paerewa, ka taea e koe te whakamahi hei whakamatautau kei te noho te kōnae