Paréntah test bisa dipaké dina garis paréntah Linux Ubuntu pikeun ngabandingkeun hiji unsur ngalawan sejen tapi geus leuwih ilahar dipake dina Aksara BASH cangkang salaku bagian tina pernyataan kondisional nu ngatur logika jeung program aliran.
Hiji Conto Dasar
Anjeun tiasa nyobian Paréntah ieu cukup ku muka jandela terminal .
test 1 -eq 2 && bahana "enya" || bahana "euweuh"
Paréntah luhur bisa direcah saperti kieu:
- test - ieu hartina anjeun rék nedunan ngabandingkeun hiji
- 1 - unsur kahiji Anjeun bade ngabandingkeun
- -eq (kumaha anjeun ngabandingkeun, dina hal ieu, anjeun nguji naha salah angka sarua séjén)
- 2 - unsur anjeun ngabandingkeun unsur kahiji deui
- && - ngajalankeun pernyataan di handap upami hasilna bener
- bahana "enya" - paréntah pikeun ngajalankeun lamun ngabandingkeun nu mulih leres
- || - ngajalankeun pernyataan di handap upami hasilna mangrupa palsu
- bahana "euweuh" - paréntah pikeun ngajalankeun lamun ngabandingkeun nu mulih palsu
Dina panggih, sorana geus ngabandingkeun 1 ka 2 na aranjeunna cocog bahana "enya" pernyataan ieu dibales anu mintonkeun "enya" na lamun maranéhna teu cocog bahana teh "euweuh" pernyataan ieu dibales anu mintonkeun "euweuh".
ngabandingkeun Nomer
Mun anjeun ngabandingkeun elemen anu parse salaku angka anjeun tiasa nganggo operator ngabandingkeun handap:
- -eq - manten nilai 1 nilai sarua 2
- -ge - nyaeta nilai 1 gede atawa sarua jeung bersih 2
- -gt - nyaeta nilai 1 gede ti nilai 2
- -le - nyaeta nilai 1 kurang atawa sarua jeung bersih 2
- -lt - nyaeta nilai 1 kirang ti nilai 2
- -ne - manten nilai 1 teu nilai sarua 2
conto:
test 1 -eq 2 && bahana "enya" || bahana "euweuh"
(Mintonkeun "euweuh" ka layar lantaran 1 henteu sarua jeung 2)
test 1 -ge 2 && bahana "enya" || bahana "euweuh"
(Mintonkeun "euweuh" ka layar lantaran 1 teu gede atawa sarua jeung 2)
test 1 -gt 2 && bahana "enya" || bahana "euweuh"
(Mintonkeun "euweuh" ka layar lantaran 1 teu leuwih gede ti 2)
test 1 -le 2 && bahana "enya" || bahana "euweuh"
(Mintonkeun "enya" ka layar lantaran 1 nyaeta kurang atawa sarua jeung 2)
test 1 -lt 2 && bahana "enya" || bahana "euweuh"
(Mintonkeun "enya" ka layar lantaran 1 nyaeta kurang atawa sarua jeung 2)
test 1 -ne 2 && bahana "enya" || bahana "euweuh"
(Mintonkeun "enya" ka layar lantaran 1 henteu sarua jeung 2)
ngabandingkeun téks
Mun anjeun ngabandingkeun elemen anu parse salaku senar anjeun tiasa nganggo operator ngabandingkeun handap:
- = - manten string 1 cocok string 2
- ! = - nyaeta string 1 béda jeung string 2
- -n - teh panjangna string gede ti 0
- -z - teh panjangna string 0
conto:
test "string1" = "string2" && bahana "enya" || bahana "euweuh"
(Mintonkeun "euweuh" ka layar sabab "string1" henteu sarua jeung "string2")
test "string1"! = "string2" && bahana "enya" || bahana "euweuh"
(Mintonkeun "enya" ka layar sabab "string1" henteu sarua jeung "string2")
test -n "string1" && bahana "enya" || bahana "euweuh"
(Mintonkeun "enya" ka layar sabab "string1" ngabogaan panjang string gede ti nol)
test -z "string1" && bahana "enya" || bahana "euweuh"
(Mintonkeun "euweuh" ka layar sabab "string1" ngabogaan panjang string gede ti nol)
ngabandingkeun Payil
Mun anjeun ngabandingkeun payil anjeun tiasa nganggo operator ngabandingkeun handap:
- -ef - Naha payil boga alat na inode angka sami (aranjeunna teh file nu sami)
- -nt - Nyaeta file mimitina leuwih anyar batan file kadua
- -ot - Nyaeta file munggaran heubeul batan file kadua
- -b - file The aya na nyaeta blok husus
- -c - file The aya na nyaeta karakter husus
- -d - file The aya na téh diréktori a
- -e - file The aya
- -f - file The aya na téh file biasa
- -g - file The aya sarta ngabogaan jumlah rombongan dieusian
- -G - file The aya na boga ku grup pamaké
- -h - file The aya na nya a link simbolis
- -k - file The aya sarta ngabogaan bit set caket na
- -L - Sarua -h
- -o - file The aya anjeun boga
- -p - file The aya na téh pipe ngaranna
- -r - file The aya na téh bisa dibaca
- -s - file The aya sarta ngabogaan ukuran anu leuwih gede ti nol
- -S - file The aya na nya stop kontak nu
- -t - The file descriptor dibuka dina terminal a
- -u - file The aya jeung bit set-pamaké-id diatur
- -w - file The aya na téh ditulisan
- -x - file The aya na téh laksana
conto:
test / jalur / ka / file1 -n / jalur / ka / file2 && bahana "enya"
(Mun file1 téh leuwih anyar ti file2 lajeng kecap "enya" bakal ditampilkeun)
test -e / jalur / ka / file1 && bahana "enya"
(Lamun file1 aya kecap "enya" bakal ditampilkeun)
test -o / jalur / ka / file1 && bahana "enya"
(Lamun sorangan file1 lajeng kecap "enya" dipintonkeun ")
hal istilah
- Meungpeuk husus - file mangrupa alat blok nu hartina data ieu baca di blok bait. Ieu umumna file alat kayaning teuas drive.
- Karakter husus - file ieu acted kana geuwat mun anjeun nulis ka dinya jeung ilaharna alat saperti port serial
Ngabandingkeun langkung Kaayaan
Kituna tebih sagalana geus ngabandingkeun hiji hal ngalawan sejen tapi kumaha upami anjeun hoyong pikeun ngabandingkeun dua kaayaan.
Contona, upami sato boga 4 suku na mana "moo" éta meureun sapi. Kantun ngecék 4 suku teu ngajamin yén anjeun gaduh sapi tapi mariksa sora ngajadikeun pasti manten.
Pikeun nguji duanana kaayaan sakaligus nganggo pernyataan di handap:
test 4 -eq 4 -a "moo" = "moo" && bahana "éta sapi" || bahana "teu sapi"
Bagian konci didieu teh -a nu nangtung pikeun tur.
Aya jalan hadé tur leuwih lengkep ilahar dipaké di ngajalankeun tes sarua jeung nu saperti kieu:
test 4 -eq 4 && test "moo" = "moo" && bahana "éta sapi" || bahana "teu sapi"
test sejen nu bisa hayang nyieun nyaeta ngabandingkeun dua pernyataan jeung lamun boh mangrupa kaluaran leres a string. Contona, upami anjeun hoyong pariksa yén hiji file ngaranna "file1.txt" aya atawa file disebut "file1.doc" aya anjeun tiasa nganggo paréntah di handap
nguji -e file1.txt -o -e file1.doc && bahana "file1 aya" || bahana "file1 teu aya"
Bagian konci didieu teh -o nu nangtung pikeun atanapi.
Aya jalan hadé tur leuwih lengkep ilahar dipaké di ngajalankeun tes sarua jeung nu saperti kieu:
test -e file1.txt || test -e file1.doc && bahana "file1 aya" || bahana "file1 teu aya"
Ngaleungitkeun The Test keyword
Anjeun teu sabenerna kudu nganggo test Kecap nedunan ngabandingkeun dina. Kabéh geus maneh mun geus ngalampirkeun pernyataan dina kurung kuadrat saperti kieu:
[-e file1.txt] && bahana "file1 aya" || bahana "file1 teu aya"
[Palaŋ] dasarna hartina sarua jeung test.
Ayeuna anjeun terang kieu anjeun bisa ngaronjatkeun kana ngabandingkeun sababaraha kondisi saperti kieu:
[4 -eq 4] && [ "moo" = "moo"] && bahana "éta sapi" || bahana "teu sapi"
[-e file1.txt] || [-e file1.doc] && bahana "file1 aya" || bahana "file1 teu aya"
singgetan
Paréntah test leuwih hade dipake dina Aksara sabab bisa nguji nilai hiji variabel ngalawan sejen tur kadalikeun aliran program. Dina garis paréntah baku, Anjeun bisa make eta pikeun nguji naha file a aya atawa