GNU/Linux >> Belajar Linux >  >> Linux

Pernyataan Kasus Bash

case ba bash pernyataan umumnya digunakan untuk menyederhanakan kondisi kompleks ketika Anda memiliki beberapa pilihan yang berbeda. Menggunakan case pernyataan alih-alih if . bersarang pernyataan akan membantu Anda membuat skrip bash Anda lebih mudah dibaca dan lebih mudah dirawat.

Bash case pernyataan memiliki konsep yang mirip dengan Javascript atau C switch penyataan. Perbedaan utamanya adalah tidak seperti switch C C pernyataan, Bash case pernyataan tidak melanjutkan mencari kecocokan pola setelah menemukan satu dan mengeksekusi pernyataan yang terkait dengan pola itu.

Dalam tutorial ini, kita akan membahas dasar-dasar case Bash pernyataan dan menunjukkan cara menggunakannya dalam skrip shell Anda.

case Sintaks Pernyataan #

Bash case pernyataan mengambil bentuk berikut:

case EXPRESSION in

  PATTERN_1)
    STATEMENTS
    ;;

  PATTERN_2)
    STATEMENTS
    ;;

  PATTERN_N)
    STATEMENTS
    ;;

  *)
    STATEMENTS
    ;;
esac
  • Setiap case pernyataan dimulai dengan case kata kunci, diikuti oleh ekspresi kasus dan in kata kunci. Pernyataan diakhiri dengan esac kata kunci.
  • Anda dapat menggunakan beberapa pola yang dipisahkan oleh | operator. ) operator mengakhiri daftar pola.
  • Sebuah pola dapat memiliki karakter khusus.
  • Pola dan perintah terkaitnya dikenal sebagai klausa.
  • Setiap klausa harus diakhiri dengan ;; .
  • Perintah yang sesuai dengan pola pertama yang cocok dengan ekspresi akan dieksekusi.
  • Ini adalah praktik umum untuk menggunakan simbol asterisk wildcard (* ) sebagai pola terakhir untuk mendefinisikan kasus default. Pola ini akan selalu cocok.
  • Jika tidak ada pola yang cocok, status pengembalian adalah nol. Jika tidak, status pengembalian adalah status keluar dari perintah yang dijalankan.

Contoh Pernyataan Kasus #

Berikut adalah contoh menggunakan case pernyataan dalam skrip bash yang akan mencetak bahasa resmi negara tertentu:

bahasa.sh
#!/bin/bash

echo -n "Enter the name of a country: "
read COUNTRY

echo -n "The official language of $COUNTRY is "

case $COUNTRY in

  Lithuania)
    echo -n "Lithuanian"
    ;;

  Romania | Moldova)
    echo -n "Romanian"
    ;;

  Italy | "San Marino" | Switzerland | "Vatican City")
    echo -n "Italian"
    ;;

  *)
    echo -n "unknown"
    ;;
esac

Simpan skrip khusus sebagai file dan jalankan dari baris perintah.

bash languages.sh

Script akan meminta Anda untuk memasukkan negara. Misalnya, jika Anda mengetik "Lithuania", itu akan cocok dengan pola pertama, dan echo perintah dalam klausa itu akan dieksekusi.

Script akan mencetak output berikut:

Enter the name of a country: Lithuania
The official language of Lithuania is Lithuanian

Jika Anda memasukkan negara yang tidak cocok dengan pola lain apa pun kecuali simbol asterisk wildcard default, katakanlah Argentina skrip akan menjalankan echo perintah di dalam klausa default.

Enter the name of a country: Argentina
The official language of Argentina is unknown

Kesimpulan #

Sekarang Anda harus memiliki pemahaman yang baik tentang cara menulis bash case pernyataan. Mereka sering digunakan untuk meneruskan parameter ke skrip shell dari baris perintah. Misalnya, skrip init menggunakan case pernyataan untuk memulai, menghentikan, atau memulai ulang layanan.

Jika Anda memiliki pertanyaan atau masukan, jangan ragu untuk memberikan komentar.


Linux
  1. Menggunakan Pernyataan Kasus di Bash

  2. Pernyataan Bash If-Else Dengan Contoh

  3. linux bash, string case unta untuk dipisahkan dengan tanda hubung

  1. Cara Menggunakan if else Conditionals Statement di Bash Script

  2. 4 Contoh Pernyataan Bash If ( If then fi, If then else fi, If elif else fi, Nested if )

  3. Apakah ada pernyataan goto di bash?

  1. Bash if elif else Pernyataan:Tutorial Komprehensif

  2. 5 Contoh Pernyataan Kasus Bash

  3. Bash/sh pernyataan 'jika lain'