Ny baiko fanadinana dia azo ampiasaina amin'ny linux baikon'ny Linux mba hampitaha ny singa iray mifanohitra amin'ny hafa, fa matetika izy io no ampiasaina amin'ny script scripts BASH ho anisan'ny fanambarana fehezanteny izay mifehy ny lojika sy ny programa mikoriana.
Ohatra fototra
Azonao atao ny manandrana ireo baiko ireo amin'ny alàlan'ny fanokafana fikandrana iray .
test 1 -eq 2 && echo "eny" || Echo "tsia"
Ity baiko etsy ambony ity dia azo ravana araka izao manaraka izao:
- fitsapana - midika izany fa efa manatanteraka fampitahana ianao
- 1 - ny singa voalohany hizaranao
- -eq (ahoana ny fampitahanao, amin'ity tranga ity, mandini-tena ianao raha toa ka misy iray hafa mitovy amin'ny hafa)
- 2 - ny singa izay mampitaha ny singa voalohany indray
- && - Manantona ity fanambarana manaraka ity raha marina ny valiny
- Echo "eny" - ny baiko atao raha toa ka averina marina ny fampitahana
- || - Manaova izao manaraka izao raha diso ny valiny
- Echo "tsia" - ny baikon'ny mihazakazaka raha ampitahaina ny fampitahana
Amin'ny ankapobeny, ny baiko dia mampitaha ny 1 hatramin'ny 2 ary mifanandrify amin'ilay fehezan-teny hoe "eny" dia ampiharina izay mampiseho "eny" ary raha toa ka tsy mifanaraka amin'ny teny hoe "tsia" dia atao ny fanambarana izay mampiseho "tsia".
Fampitahana Numbers
Raha ampitahainao ireo singa izay mampiseho ireo tarehimarika azonao ampiasaina ireto fampitahana fampitahana manaraka ireto:
- -eq - dia manome lanja 1 mitovy lanja 2
- -ge - ny isa 1 lehibe na mitovy amin'ny sandany 2
- -gt - lanjany 1 lehibe noho ny sandany 2
- -le - dia lanjany 1 latsaka na mitovy lanja 2
- -lt - lanjany 1 latsaky ny sandany 2
- -ne - manao ny sandany 1 tsy mitovy ny lanjany 2
ohatra:
test 1 -eq 2 && echo "eny" || Echo "tsia"
(mampiseho "tsia" amin'ny efijery satria 1 tsy mitovy 2)
test 1 -ge 2 && echo "eny" || Echo "tsia"
(mampiseho "tsia" amin'ny efijery satria 1 dia tsy lehibe kokoa na mitovy 2)
test 1 -t 2 && echo "eny" || Echo "tsia"
(mampiseho "tsia" amin'ny efijery satria 1 dia tsy mihoatra ny 2)
test 1 -le 2 && echo "eny" || Echo "tsia"
(mampiseho "eny" mankany amin'ny efijery satria 1 dia kely na mitovy amin'ny 2)
test 1 -t 2 && echo "eny" || Echo "tsia"
(mampiseho "eny" mankany amin'ny efijery satria 1 dia kely na mitovy amin'ny 2)
test 1 -ne 2 && echo "eny" || Echo "tsia"
(mampiseho "eny" mankany amin'ny efijery satria 1 tsy mitovy 2)
Fampitahana ny lahatsoratra
Raha ampitahainao ireo singa manaparitaka toy ny tady dia azonao ampiasaina ireto mpampihatra fampitahana manaraka ireto:
- = - mitarika string match string 2
- ! = - dia singa 1 samy hafa amin'ny string 2
- -n - ny lamosina lamandy mihoatra ny 0
- -z - ny lamosina string 0
ohatra:
test "string1" = "string2" && echo "eny" || Echo "tsia"
(mampiseho "tsia" amin'ny efijery satria "string1" dia tsy mitovy "string2")
test "string1"! = "string2" && echo "eny" || Echo "tsia"
(mampiseho "eny" mankany amin'ny efijery satria "string1" dia tsy mitovy "string2")
test -n "string1" && echo "eny" || Echo "tsia"
(mampiseho "eny" mankany amin'ny efijery satria "string1" dia manana lamosina loko lehibe kokoa noho ny zero)
test -z "string1" && echo "eny" || Echo "tsia"
(mampiseho ny "tsia" amin'ny efijery satria "string1" dia manana lamosina loko lehibe kokoa noho ny zero)
Fampitahana ny rakitra
Raha toa ka mampitaha rakitra ianao dia afaka mampiasa ireto mpampihatra fampitahana manaraka ireto:
- -ef - Moa ve ny tahiry dia manana fitaovana sy tarehin-javatra mitovy (izy ireo ilay rakitra)
- - ny - Ny doka voalohany vaovao kokoa noho ilay dika faharoa
- - Tsy - Ny antontan-taratasy antitra voalohany noho ny dika faharoa
- -b - Misy ny rakitra ary voasakana manokana
- -c - Misy ny rakitra ary misy toetra manokana
- -d - Misy ny rakitra ary misy doka
- -e - Misy ny rakitra
- -f - Misy ny rakitra ary misy tahiry mahazatra
- -g - Misy ny rakitra ary manana ny nomeraon'ny vondrona
- -G - Ny antontan-taratasy dia misy ary tompon'ilay vondrona mpampiasa
- -h - Misy ny rakitra ary misy rohy an'ohatra
- -k - Misy ny rakitra ary misy ny kitapo bitika
- -L - Tahaka ny -h
- -O - Ny antontan-taratasy dia misy anao ny tompona
- -p - Misy ny rakitra ary misy ny anaran'ny pipes
- -r - Misy ny rakitra ary azo vakiana
- -s - Misy ny rakitra ary manana habe mihoatra noho ny zero
- -S - Misy ny rakitra ary sakana izany
- -t - Ny fisintonana ny rakitra dia misokatra amin'ny terminal
- -u - Misy ny rakitra ary napetraka ny bit-user-id
- -w - Misy ny rakitra ary soratana
- -x - Misy ny rakitra ary azo tanterahina
ohatra:
test / path / to / file1 -n / path / to / file2 && echo "eny"
(Raha toa ny file1 dia vao haingana kokoa noho ny file2 dia haseho ny teny hoe "eny")
test -e / path / to / file1 && echo "eny"
(raha misy ny file1 dia haseho ny teny hoe "eny")
test -O / path / to / file1 && echo "eny"
(raha manana file1 ianao dia haseho ny teny hoe "eny")
voambolana
- Manokàna manokana - Ny rakitra dia fitaovana fanakanana izay midika fa raketina anaty tahan'ny bytes ny angona. Ireo dia fitaovana fampiasa amin'ny ankapobeny toy ny fiara mafy.
- Karazam-bavaka manokana - Natao avy hatrany ny rakitra rehefa soratanao izany ary matetika dia fitaovana toy ny port serial
Ampitahao ny fepetra maro
Hatreto, ny zava-drehetra dia mampitaha zavatra iray amin'ny hafa, fa ahoana raha te hifanaraka amin'ny fepetra roa ianao.
Ohatra, raha misy biby manana tongotra efatra ary mandeha "moo" dia angamba ombivavy. Ny fanamarinana tsotra fotsiny ho an'ny tongotra efatra dia tsy manome antoka fa manana ombivavy ianao fa manamarina ny feo tsy maintsy atao.
Mba hitsapana ireo fepetra roa ireo indray mandeha dia ampiasao ity fanambarana manaraka ity:
test 4 -eq 4 -a "moo" = "moo" && echo "ombivavy" || Echo "tsy ombivavy izany"
Ny ampahany manan-danja eto dia ny -a izay mijoro sy.
Misy fomba tsara kokoa sy ampiasaina amin'ny fomba mahazatra toy izany, ary toy izao manaraka izao:
test 4 -eq 4 && test "moo" = "moo" && echo "omby vavy" || Echo "tsy ombivavy izany"
Ny fisedrana iray hafa azonao atao dia ny mampitaha fanambarana roa ary raha ny iray dia ny vokatra marina. Ohatra, raha te-hanamarina ianao fa misy ny rakitra antsoina hoe "file1.txt" na misy rakitra antsoina hoe "file1.doc" dia afaka mampiasa ireto baiko manaraka ireto ianao
test -e file1.txt -o -e file1.doc && echo "file1 misy" || Echo "file1 tsy misy"
Ny ampahany manan-danja eto dia ny -o izay mijoro na.
Misy fomba tsara kokoa sy ampiasaina amin'ny fomba mahazatra toy izany, ary toy izao manaraka izao:
test -e file1.txt || test -e file1.doc && echo "file1 misy" || Echo "file1 tsy misy"
Esory ny teny faneva
Tsy mila mampiasa ny teny hoe test ianao mba hanatanterahana ny fampitahana. Ny zava-drehetra tokony hataonao dia asio ny fanambarana ao amin'ny efamira mitovy:
[-efa file1.txt] && echo "file1 misy" || Echo "file1 tsy misy"
Ny [ary] dia midika fa mitovy amin'ny fitsapana.
Ankehitriny dia fantatrao fa afaka manatsara ianao amin'ny fampitahana ireo fepetra marobe amin'ny manaraka:
[4 -q 4] && ["moo" = "moo"] && echo "omby vavy" || Echo "tsy ombivavy izany"
[-e fichier1.txt] || [-e file1.doc] && echo "file1 misy" || Echo "file1 tsy misy"
famintinana
Ny baiko fanandramana dia ilaina kokoa amin'ny scripty satria azonao atao ny mijery ny lanjan'ny fari-pifanarahana iray amin'ny hafa sy ny fandaminana ny programa. Azonao atao ny mampiasa azy io mba hizahana raha misy ny rakitra iray