Di sini ia menunjukkan untuk menggunakan ||
dan &&
dalam satu baris untuk menyatukan eksekusi perintah: Bagaimana saya bisa memeriksa kesalahan apt-get dalam skrip bash?
Saya mencoba menghentikan eksekusi skrip jika kondisi tertentu gagal,
misalnya
false || echo "Obvious error because its false on left" && exit
Di sini ia mencetak Obvious error because its false on the left
dan keluar dari konsol yang saya inginkan.
true || echo "This shouldn't print" && exit
Di sini, tidak ada cetak gema tetapi exit
perintah juga berjalan, yaitu konsol ditutup, bukankah exit
perintah tidak berjalan karena perintah gema di sebelah kanan tidak dijalankan? Atau apakah secara default pernyataan dianggap salah di sisi kiri &&
operator?
Sunting: Seharusnya saya sebutkan sebelumnya, tujuan saya adalah untuk mengulang kesalahan dan keluar jika tidak jelas. WRT ke kasus spesifik saya menangkap kesalahan ketika pengelompokan kondisi menggunakan && dan ||, @ bodhi.zazen jawaban memecahkan masalah.
Jawaban @takatakatek membuatnya lebih jelas tentang kontrol aliran dan tautan panduan bash sangat baik
@muru jawaban memiliki penjelasan yang baik tentang mengapa tidak menggunakan set -e jika Anda ingin pesan kesalahan khusus dilemparkan dengan alternatif menggunakan perl dan trap yang saya pikir merupakan cara yang lebih kuat dan lihat sendiri menggunakannya dari skrip bash kedua saya dan seterusnya!