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

  • Mindy

    Mindy

    20 NİSAN 2006
  • Tome Rodrigo

    Tome Rodrigo

    9 Temmuz 2006
  • Viktorija A.

    Viktorija A.

    28 Mart 2009