Bash jika pernyataan jika, elif, lain, maka, fi

Bash jika pernyataan jika, elif, lain, maka, fi

Sekiranya anda baru mula meneroka bahasa pengekodan bash, anda akan mendapati diri anda ingin membuat kenyataan bersyarat. Kenyataan bersyarat, dengan kata lain, tentukan 'jika keadaan adalah benar atau palsu, maka lakukan ini atau itu, dan jika sebaliknya adalah benar, lakukan sesuatu lain'. Ini adalah fungsi paling asas dari sebarang pernyataan bersyarat.

Artikel ini akan memperkenalkan anda kepada lima asas jika Klausa pernyataan. menjadi jika, Elif, lain, kemudian dan fi. Yang pertama hanya membuka a jika pernyataan, yang kemudian memperkenalkan Apa yang memerintahkan untuk melaksanakan jika keadaan pernyataan itu benar seksyen dan lain memperkenalkan Apa yang memerintahkan untuk melaksanakan jika keadaan pernyataan itu salah seksyen. Akhirnya, fi menutup kenyataan itu. Kami juga mempunyai yang istimewa Elif di mana kita akan melihat lebih banyak dalam satu minit. Mari kita mulakan dengan contoh yang mudah.

Dalam tutorial ini anda akan belajar:

  • Cara melaksanakan jika penyataan di baris perintah bash
  • Bagaimana seperti itu jika Kenyataan juga boleh digunakan di dalam skrip bash
  • Contoh yang menunjukkan kepada anda jika, Elif, lain, kemudian dan fi Klausa di Bash
Bash jika pernyataan: jika, elif, lain, maka, fi

Keperluan perisian dan konvensyen yang digunakan

Keperluan Perisian dan Konvensyen Talian Perintah Linux
Kategori Keperluan, konvensyen atau versi perisian yang digunakan
Sistem Pengedaran linux-bebas
Perisian Baris perintah bash, sistem berasaskan linux
Yang lain Sebarang utiliti yang tidak termasuk dalam shell bash secara lalai boleh dipasang menggunakan sudo apt-get memasang nama utiliti (atau pemasangan yum untuk sistem berasaskan redhat)
Konvensyen # - memerlukan komando linux untuk dilaksanakan dengan keistimewaan akar sama ada secara langsung sebagai pengguna root atau dengan menggunakan sudo perintah
$-Memerlukan komando linux untuk dilaksanakan sebagai pengguna yang tidak istimewa

Contoh 1: Mudah jika pernyataan di baris arahan

$ jika [1 -eq 1]; kemudian echo "dipadankan!"; fi dipadankan! 

Dalam pernyataan ini, kami membandingkan satu dengan satu. Perhatikan bahawa -Pers maksudnya sama dengan. Untuk melakukan sebaliknya, seseorang boleh menggunakan -ne yang bermaksud tidak sama dengan, Seperti yang ditunjukkan dalam contoh berikut:

$ jika [0 -ne 1]; kemudian echo "dipadankan!"; fi dipadankan! 

Dalam kes ini, kami memeriksa tidak kesamaan, dan sebagai 0 tidak sama dengan 1 The jika pernyataan itu benar, dan arahan selepas kemudian akan dilaksanakan. Mari ubah sedikit ini:

$ jika [1 -ne 1]; kemudian echo "dipadankan!"; lain echo" tidak dipadankan!"; fi tidak sepadan! 

Di sini kami memperkenalkan lain fasal; Apa yang memerintahkan untuk melaksanakan ketika keadaan di jika pernyataan telah terbukti palsu (atau tidak betul). Semasa kami cuba menanyakan sama ada 1 tidak sama (-ne) hingga 1 kali ini, dan sebagai 1 sama 1 (yang tidak berlaku), keadaan yang dirumuskan dalam ini jika pernyataan itu palsu, dan kami masuk ke dalam kami lain pernyataan dengan teks yang sepadan dicetak.

Contoh 2: Menggunakan dan jika pernyataan dari dalam skrip shell bash

Adalah baik untuk diperhatikan bahawa anda boleh menyalin dan tampal dengan mudah jika pernyataan yang ditunjukkan di sini atau di tempat lain, dan gunakannya di dalam skrip shell bash. Sebagai contoh:

$ echo '#!/bin/bash '> myscript.sh $ echo 'jika [1 -eq 1]; kemudian echo "dipadankan!"; fi '>> myscript.sh $ chmod +x myscript.sh $ ./MyScript.SH dipadankan! $ 
Salinan

Di sini kita hanya mencipta yang kecil myscript.sh skrip shell dengan menggunakan echo dan juga > Pengalihan semula untuk mengalihkan output dari kami echo ke fail. Semasa anda menggunakan > Fail baru akan dibuat, dan mana -mana fail dengan nama yang sama akan ditimpa jadi sila gunakan dengan berhati -hati. Seterusnya kami menambah pernyataan jika kami sekali lagi dengan menggunakan echo dan pengalihan dua >> yang tidak seperti > tidak akan membuat fail baru, dan hanya masukkan teks ke fail yang ditunjukkan.

Seterusnya kita chmod +x skrip untuk menjadikannya boleh dilaksanakan, dan melaksanakan skrip menggunakan ./ awalan yang diperlukan dalam bash (mana -mana penentu jalan yang betul akan dilakukan).

Baris pertama skrip hanya memastikan bahawa kami akan menggunakan penterjemah bash untuk skrip kami. Adalah amalan yang baik untuk sentiasa menetapkan ini untuk Bash dan skrip lain (untuk skrip lain, anda akan mahu menetapkan ini kepada mana -mana jurubahasa yang akan melaksanakan skrip anda, sebagai contoh #!/usr/bin/python3 untuk python 3 (.py3 contohnya) skrip dll).

Apabila kita melaksanakan skrip, kita dapat melihat bahawa output dijana seperti yang diharapkan (1 perlawanan 1): Dipadankan!.

Contoh 3: Apa itu ELIF?

The Elif Klausa memberikan kita kelonggaran singkat yang lebih pendek untuk pemotongan keperluan bersarang. Pertimbangkan perkara berikut ujian.sh:

#!/bin/bash jika [0 -eq 1]; maka echo '0 = 1' lain jika [0 -eq 2]; kemudian echo '0 = 2' else echo '0!= 2 'fi fi 
Salinan

Dan outputnya:

$ ./ujian.SH 0!= 2 


Di sini kami melangkah melalui yang pertama jika pernyataan, dan sejak 0 tidak sepadan 1, The lain Fasal diaktifkan. Ini berlaku kali kedua ketika 0 juga membuktikan tidak sama rata 2 dan oleh itu -Pers (sama dengan) keadaan gagal, dan yang kedua lain Fasal diaktifkan, memberikan sebagai output 0!= 2. Mari bandingkan ini dengan Elif pernyataan berasaskan dalam perkara berikut ujian2.sh.

#!/bin/bash jika [0 -eq 1]; kemudian echo '0 = 1' elif [0 -eq 2]; kemudian echo '0 = 2' else echo '0!= 2 'fi 
Salinan

Dan outputnya:

$ ./test2.SH 0!= 2 

Skrip itu sama persis, tetapi dengan cara yang lebih fleksibel dan lebih pendek, hanya memerlukan satu tahap jika kedalaman pernyataan dan dengan kod keseluruhan yang bersih. Perhatikan juga bahawa ada kemungkinan untuk mempunyai satu jika penyata diikuti oleh banyak elseif Kenyataan, yang membolehkan pemaju untuk menguji pelbagai keadaan adalah struktur tahap yang rapi,.

Kesimpulan

Dalam artikel ini, kami meneroka contoh -contoh yang mencontohkan jika, Elif, lain, kemudian dan fi Klausa di Bash. Kami juga melihat cara melaksanakan jika penyataan di baris arahan bash. Kami juga melihat memindahkan kenyataan tersebut ke dalam skrip bash. Nikmati jika pernyataan di bash, dan tinggalkan kami dengan yang terbaik jika petua dan cara!

Dan, untuk melihat lebih maju pada apa jika boleh lakukan untuk anda apabila digabungkan dengan subshells, checkout kami cara menggunakan subshells bash di dalam jika artikel pernyataan!

Tutorial Linux Berkaitan:

  • Menguasai Gelung Skrip Bash
  • Pengenalan kepada Automasi, Alat dan Teknik Linux
  • Perkara yang hendak dipasang di Ubuntu 20.04
  • Gelung bersarang dalam skrip bash
  • Perkara yang perlu dilakukan setelah memasang ubuntu 20.04 Focal Fossa Linux
  • Skrip bash: syarat
  • Cara Menggunakan Subshells Bash Di dalam Jika Kenyataan
  • Gelung bash dengan contoh
  • Mint 20: Lebih baik daripada Ubuntu dan Microsoft Windows?
  • Ubuntu 20.04 Panduan