Berurusan dengan string adalah bagian dari bahasa pemrograman apa pun. Skrip Bash Shell tidak berbeda. Bahkan sintaksnya hampir sama.
Dalam tutorial singkat ini, saya akan menunjukkan cara membandingkan string di skrip shell Bash.
Perbandingan string bash
Inilah cara Anda membandingkan string di Bash.
if [ "$string1" == "$string2" ]
Anda juga dapat menggunakan string secara langsung daripada menggunakan variabel.
if [ "$string1" == "This is my string" ]
Biarkan saya menunjukkannya kepada Anda dengan contoh yang tepat.
Periksa apakah dua string sama
Jika Anda ingin memeriksa apakah dua string sama, berikut contohnya:
#!/bin/bash
string1="MyString"
string2="MyString"
if [ "$string1" == "$string2" ]
then
echo "Equal Strings"
else
echo "Strings not equal"
fi
Kiat:Perhatikan spasi
Harus ada spasi di antara [
dan nama variabel dan operator persamaan ==. Jika Anda melewatkan salah satu spasi di sini, Anda akan melihat kesalahan seperti 'operator unary diharapkan' atau hilang `]'.
Periksa apakah string tidak sama di Bash
Alih-alih memeriksa kualitasnya, mari kita lakukan yang sebaliknya dan periksa ketidaksetaraan. Bash juga menyediakan operator negasi sehingga Anda dapat dengan mudah menggunakan kondisi “jika tidak sama” dalam skrip shell.
if [ "$string1" != "Not MyString" ]
Contoh lengkapnya seperti ini:
#!/bin/bash
string1="MyString"
if [ "$string1" != "Not MyString" ]
then
echo "Not Equal Strings"
else
echo "Strings equal"
fi
Periksa apakah string null atau kosong di Bash
Tidak seperti beberapa bahasa lain seperti C++, di Bash Anda dapat memeriksa apakah string tersebut null atau kosong dengan satu perintah:
if [ -z "$VAR" ]
-z sebenarnya memeriksa apakah panjang variabel adalah nol atau tidak. Jika variabel tidak disetel atau jika kosong (sama dengan “”), panjangnya akan menjadi nol dan karenanya kondisinya akan kembali benar.
Contoh lengkapnya bisa dilihat di sini:
#!/bin/bash
string1=
string2=""
if [ -z "$string1" ]
then
echo "Null Strings"
fi
if [ -z "$string2"]
then
echo "Empty String"
fi
Catatan tentang penggunaan tanda kurung tunggal '[]' dan tanda kurung ganda '[[]]' dalam skrip bash
Anda juga dapat menggunakan pernyataan if dengan tanda kurung ganda seperti ini:
if [[ "$string1" == "My String" ]]
Braket tunggal adalah konvensi Posix lama dan memiliki beberapa kekurangan. Jika Anda tidak menggunakan tanda kutip ganda di sekitar variabel dan variabel tidak terdefinisi, variabel tersebut akan hilang dari kode dan ini akan mengakibatkan kesalahan sintaksis.
if [ $string1 == "My String" ]
Jika variabel $string1 kosong atau tidak didefinisikan dalam kode di atas, baris tersebut akan menjadi ekuivalen dengan
if [ == "$string2" ]
Kesimpulan
Saya harap tutorial singkat ini membantu Anda dalam membandingkan string dalam skrip bash shell. Saya sarankan untuk membaca tutorial singkat lainnya tentang perintah bash sleep juga.
Jika Anda memiliki pertanyaan atau saran, jangan ragu untuk meninggalkan komentar di bawah.