SORU
4 Mayıs 2009, PAZARTESİ


Eğer herhangi bir komut sıfır olmayan bir değer döndürürse bir kabuk iptal ediliyor?

Komutları bir dizi çağırır Bash bir kabuk var. Eğer komutlardan herhangi bir sıfır olmayan bir değer döndürür eğer kabuk komut dosyası otomatik olarak dönüş değeri 1 ile çıkmak istiyorum.

Olası açıkça her komut sonucu kontrol etmeden bu?

örneğin

dosomething1
if [[ $? -ne 0 ]]; then
    exit 1
fi

dosomething2
if [[ $? -ne 0 ]]; then
    exit 1
fi

CEVAP
4 Mayıs 2009, PAZARTESİ


Komut başına şunu Ekle:

set -e

Bu kabuk basit bir komut sıfırdan farklı bir çıkış değeri ile çıkar hemen çıkılmasına neden olur. Basit bir komut veya test veya && veya || Listesinin bir parçası kadar süre herhangi bir komut bir parçası durumunda.

Bash(1) "" iç daha fazla bilgi için komut. set sayfasına bakınız.

Ben şahsen hemen hemen tüm kabuk betikleri Başlat "- e". Gerçekten sinir bozucu bir script şey ortada başarısız ve senaryonun kalanı için varsayımlar kırıldığında inatla devam ediyor.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Cristina Landa

    Cristina Lan

    28 Ocak 2010
  • Dion Coulls

    Dion Coulls

    16 AĞUSTOS 2006
  • RobertDuskin

    RobertDuskin

    12 HAZİRAN 2008