Panduan Pemula Untuk BASH - Membandingkan Perkara
Di bahagian sebelumnya dalam tutorial BASH, kita melihat kenyataan bersyarat.
Panduan itu sangat panjang tetapi benar-benar hanya menunjukkan bagaimana untuk mengawal aliran logik. Panduan ini menunjukkan cara yang berbeza di mana anda boleh membandingkan pembolehubah.
Imej di atas menunjukkan contoh pertama dalam panduan minggu ini:
#! / bin / bashname1 = "gary"name2 = "bob"jika "$ name1" = "$ name2"kemudian echo "names match"lain echo "nama-nama tidak sepadan"fiDalam skrip di atas saya telah menentukan dua pembolehubah yang dipanggil name1 dan name2 dan memberi mereka nilai "gary" dan "bob". Oleh kerana pembolehubah dikandung antara tanda petikan, mereka dipanggil pembolehubah rentetan yang menjadi lebih relevan apabila tutorial diteruskan. Semua skrip yang dilakukan adalah membandingkan nilai $ name1 dan $ name2 dan jika mereka sepadan dengan output rentetan "nama yang sepadan" dan jika mereka tidak mengeluarkan rentetan "nama-nama tidak sepadan". Tanda petikan di sekitar $ name1 dan $ name2 pembolehubah adalah penting kerana jika nilai salah satu dari mereka belum ditetapkan maka skrip akan tetap berfungsi. Sebagai contoh jika $ name1 tidak pernah ditetapkan maka anda akan membandingkan "" dengan "bob". Tanpa tanda petikan anda akan ditinggalkan dengan = "bob" yang jelas gagal. Anda juga boleh menggunakan! = Notasi untuk menentukan tidak sama dengan seperti berikut: Dalam contoh di atas ujian itu membandingkan dua tali yang sama dan bertanya soalan apakah gary datang sebelum bob dalam abjad? Jelas jawapannya tidak. Skrip memperkenalkan kurang daripada operator (<). Oleh kerana pengendali yang kurang daripada operator juga digunakan untuk pengalihan, anda perlu melepaskannya dengan slash () untuk itu bermakna kurang daripada itu sebabnya dalam skrip di atas saya membandingkan "$ name1" <"$ name2". Sebaliknya kurang daripada jelas lebih besar daripada. Daripada menggunakan <gunakan >. Sebagai contoh Jika anda ingin menguji sama ada pemboleh ubah mempunyai nilai anda boleh menggunakan ujian berikut: Dalam skrip di atas saya telah menguji sama ada $ name2 telah diberikan nilai dan jika ia bukan mesej "Tidak ada bob, tidak pernah ada bob muncul". Pada slaid yang lepas, kita membahas sama ada pemboleh ubah telah ditetapkan atau tidak. Kadang-kadang walaupun pemboleh ubah mungkin telah ditetapkan tetapi ia mungkin tidak mempunyai nilai. Sebagai contoh: Untuk menguji sama ada pemboleh ubah mempunyai nilai atau tidak (iaitu panjang sifar) gunakan -z seperti berikut: Dalam skrip di atas saya telah menetapkan $ name1 kepada rentetan panjang sifar dan kemudian membandingkannya menggunakan -z. Jika $ name1 adalah sifar panjang mesej "gary telah keluar untuk petang" akan dipaparkan. Sejauh ini semua perbandingan telah dibuat untuk rentetan. Bagaimana dengan membandingkan nombor? Skrip di atas menunjukkan contoh membandingkan dua nombor: Untuk menetapkan pemboleh ubah menjadi nombor, tetapkannya tanpa tanda petikan. Anda kemudiannya boleh membandingkan nombor dengan tanda sama. Saya lebih suka menggunakan pengendali berikut untuk membandingkan dua nombor: Jika anda ingin membandingkan sama ada nombor kurang daripada nombor lain anda boleh menggunakan kurang daripada pengendali (<). Seperti dengan rentetan, anda perlu melarikan diri dari operator kurang dengan slash. ( <). Cara yang lebih baik untuk membandingkan nombor adalah menggunakan notasi berikut sebagai berikut: Sebagai contoh: Akhirnya untuk panduan ini, jika anda ingin menguji sama ada dua nombor adalah berbeza, anda boleh menggunakan sama ada kurang daripada dan lebih besar daripada pengendali bersama-sama (<>) atau -ne seperti berikut: Sekiranya anda telah melepaskan tiga bahagian pertama panduan ini, anda boleh menemui mereka dengan mengklik pada pautan berikut: Di bahagian seterusnya panduan saya akan meliputi aritmetik. Panduan Pemula Untuk BASH - Membandingkan Strings
Panduan Pemula Untuk BASH - Membandingkan Strings
Panduan Pemula Untuk BASH - Membandingkan Strings
Panduan Pemula Untuk BASH - Membandingkan Nombor
Panduan Pemula Untuk BASH - Membandingkan Nombor
Panduan Pemula Untuk BASH - Membandingkan Nombor
Panduan Pemula Untuk BASH - Operator Perbandingan - Ringkasan