Bandingkan string dalam bash
- 993
- 63
- Ricardo Gottlieb
Kebutuhan untuk membandingkan string dalam skrip bash relatif umum dan dapat digunakan untuk memeriksa kondisi tertentu sebelum melanjutkan ke bagian berikutnya dari skrip. String dapat berupa urutan karakter apa pun. Untuk menguji apakah dua string sama, kedua string harus berisi karakter yang sama persis dan dalam urutan yang sama. Itu bisa menjadi kata atau satu kalimat. Misalnya, string satu
adalah sama dengan string satu
tetapi tidak sama dengan string dua
. Dapatkan idenya?
Dalam panduan ini, kami akan menunjukkan kepada Anda cara membandingkan string di shell bash pada sistem Linux. Kami akan menunjukkan ini dalam konteks skrip if/else bash yang sederhana sehingga Anda dapat melihat bagaimana pengujian untuk kondisi ini akan bekerja saat mengembangkan skrip, tetapi kami juga akan menunjukkan bagaimana perbandingan yang sama ini dapat dilakukan di terminal baris perintah.
Dalam tutorial ini Anda akan belajar:
- Cara membandingkan string di bash
- Contoh jika/lain skrip bash yang membandingkan string
Kategori | Persyaratan, konvensi atau versi perangkat lunak yang digunakan |
---|---|
Sistem | Distro Linux apa pun |
Perangkat lunak | N/a |
Lainnya | Akses istimewa ke sistem Linux Anda sebagai root atau melalui sudo memerintah. |
Konvensi | # - mensyaratkan perintah linux yang diberikan untuk dieksekusi dengan hak istimewa root baik secara langsung sebagai pengguna root atau dengan menggunakan sudo memerintah$ - mensyaratkan perintah Linux yang diberikan untuk dieksekusi sebagai pengguna biasa |
Bandingkan apakah dua string sama
Anda dapat membuka terminal pada sistem Anda dan menggunakan beberapa contoh ini untuk merasakan cara kerja operator bash ketika datang untuk membandingkan string.
Anda dapat menggunakan sintaks berikut untuk membandingkan dua string.
$ ["apel" = "apel"] $ echo $? 0
Nilai yang dikembalikan 0
berarti benar. Dengan kata lain, string cocok (seperti yang dapat kita lihat dengan jelas untuk diri kita sendiri).
Ayo coba yang lain.
$ ["apel" = "jeruk"] $ echo $? 1
Dalam contoh ini, apel
tidak sama jeruk
, Jadi nilai 1
(Salah) dikembalikan. Contoh yang lebih kompleks paling baik ditunjukkan dalam konteks skrip bash, yang kami bahas di bagian selanjutnya.
Contoh skrip bash untuk membandingkan string
Dalam skrip bash, Anda biasanya akan menyimpan salah satu atau kedua string Anda sebagai variabel sebelum membandingkannya. Inilah contoh sederhana.
#!/bin/bash string1 = "apel" string2 = "jeruk" jika ["$ string1" = "$ string2"]; Kemudian gema "Kedua string itu sama."lain gema" Kedua string tidak sama."Fi
Menyalin Mengeksekusi skrip ini akan menghasilkan output berikut.
Kedua string tidak sama.
Tetapi =
Bukankah satu -satunya operator yang tersedia bagi kami. Kami juga dapat menguji untuk melihat apakah dua string tidak sama dengan !=
operator.
#!/bin/bash string1 = "apel" string2 = "jeruk" jika ["$ string1" != "$ string2"]; Lalu echo "string berbeda.String "lain gema" tidak berbeda."Fi
Menyalin Mengeksekusi skrip ini akan menghasilkan output berikut.
String berbeda.
Ada juga -z
untuk menguji apakah panjang string adalah 0, dan -N
untuk menguji apakah panjang string tidak nol.
#!/bin/bash string = "" if [[-z $ string]]; lalu gema "String itu kosong."lain gema" String tidak kosong."Fi
Menyalin Mengeksekusi skrip ini akan menghasilkan output berikut.
Stringnya kosong.
Dan skrip yang sama dengan -N
dan string yang tidak nol sebagai gantinya:
#!/bin/bash string = "halo" if [[-n $ string]]; lalu gema "String itu tidak kosong."lain gema" string itu kosong."Fi
Menyalin Mengeksekusi skrip ini akan menghasilkan output berikut.
String tidak kosong.
Kesimpulan
Dalam panduan ini, kami melihat cara membandingkan string dalam bash, baik dari baris perintah maupun dalam skrip if/else bash. Fungsionalitas ini dapat, tentu saja, diperluas ke skrip yang lebih kuat yang membaca input dari pengguna atau menggunakan operator case, dll.
Ini semua adalah metode perbandingan yang Anda perlukan untuk membandingkan string dalam bash. Bahkan lebih ada saat membandingkan angka, seperti -LT
(kurang dari) dan -GT
Operator (lebih besar dari). Tapi kami membahasnya secara lebih rinci dalam panduan skrip bash kami.
Tutorial Linux Terkait:
- Bash Script: Contoh Perbandingan String
- Dasar -dasar editor VIM di Linux
- Pengantar Otomatisasi Linux, Alat dan Teknik
- Menguasai loop skrip bash
- Variabel bash khusus dengan contoh
- Sistem Linux Hung? Cara melarikan diri ke baris perintah dan…
- Loop bersarang dalam skrip bash
- Mint 20: Lebih baik dari Ubuntu dan Microsoft Windows?
- Hal -hal yang harus diinstal pada ubuntu 20.04
- Hal -hal yang harus dilakukan setelah menginstal ubuntu 20.04 FOSSA FOSSA Linux