Bash-Script'de IF-Deyimleri Nasıl Yazılır

Komutlar, Sözdizimi ve Örnekler

Bir koşullu deyim türü olan bir if deyimi ile, belirtilen koşullara bağlı olarak farklı eylemler gerçekleştirebilirsiniz. Sisteme karar verme yeteneği verir.

If-ifadesinin en basit biçimine örnek olarak şunlar verilebilir:

sayısı = 5 [$ count == 5] ise echo "$ count" fi

Bu örnekte, "sayım" değişkeni if ​​ifadesinin bir parçası olarak kullanılan bir koşulu belirtmek için kullanılır. If deyimi yürütülmeden önce "sayma" değişkenine "5" değeri atanır. If-ifadesi daha sonra "sayım" değerinin "5" olup olmadığını kontrol eder. Bu durumda, "o zaman" ve "fi" anahtar sözcükleri arasındaki ifade uygulanır, aksi takdirde if deyimini izleyen tüm ifadeler uygulanır. "Fi" anahtar sözcüğü, "if" yazıyordur. Bash betik dili, bu ifadeyi, karmaşık bir ifadenin sonunu, böyle bir if ifadesini veya büyük / küçük harf ifadelerini işaretlemek için kullanır.

"Echo" ifadesi argümanını, bu durumda "sayım" değişkeninin değerini terminal penceresine yazdırır. If deyiminin anahtar sözcükleri arasındaki kodun okunması okunabilirliği artırır, ancak gerekli değildir.

Bir kodun yalnızca bir koşulun doğru olmaması durumunda gerçekleştirileceği bir durumunuz varsa, bu örnekte olduğu gibi bir if deyiminde "else" anahtar sözcüğünü kullanabilirsiniz:

sayı = 5 [$ count == 5] ise echo "$ count" ise yankı "sayım 5 değil" fiili

"$ Count == 5" koşulu true ise, sistem "count" değişkeninin değerini yazar, aksi takdirde "sayım 5 değil" dizgisini yazdırır.

Birden fazla koşul arasında ayrım yapmak isterseniz, bu örnekte olduğu gibi "else if" türetilmiş "elif" anahtar sözcüğünü kullanabilirsiniz:

[$ count == 5] ise echo "count is 5" elif [$ count == 6] sonra echo "count is 6" else echo "yukarıdakilerin hiçbiri" yankısı

Eğer "sayım" "5" ise, sistem "sayı beştir" yazdırır. Eğer "sayım" "5" değil "6" ise, sistem "sayım altıdır" basar. Ne "5" ne de "6" ise, sistem "yukarıdakilerin hiçbiri" yazdırmaz.

Tahmin edebileceğiniz gibi, herhangi bir sayıda "elif" cümlesi olabilir. Birden çok "elif" koşuluna sahip bir örnek şöyle olurdu:

[$ count == 5] ise echo "sayım beştir" elif [$ count == 6] sonra echo "count altıdır" elif [$ count == 7] sonra echo "sayım yedi" elif [$ count = = 8] sonra echo "sayım sekiz" elif [$ count == 9] sonra echo "sayım dokuz" else echo "yukarıdakilerin hiçbiri" fi

Bu tür ifadeleri birden çok koşulla yazmanın daha kompakt bir yolu durum yöntemidir. Birden çok "elif" cümlesiyle if deyimine benzer çalışır, ancak daha özlüdür. Örneğin, yukarıdaki kod parçası "durum" ifadesi ile şu şekilde yeniden yazılabilir:

5'de "$ count" durumu) echo "count is five" ;; 6) echo "sayısı altıdır"; 7) echo "sayısı yedi"; 8) echo "sayım sekiz"; 9) echo "sayım dokuz"; *) echo "yukarıdakilerin hiçbiri" esac

If ifadeleri genellikle bu örnekte olduğu gibi döngüler veya while döngüler içinde kullanılırsa:

count = 1 done = 0 iken [$ count -le 9] uyku 1 ((++ sayımı)) eğer [$ count == 5] ise devam ederse "$ count" işleminin devamı echo Bitti

İfadeleri de iç içe geçirebilirsiniz. En basit iç içe geçmiş ifadesi şu şekildedir: eğer ... o zaman ... başka ... eğer ... sonra ... fi ... fi. Bununla birlikte, if-cümlesi keyfi karmaşıklıkla iç içe olabilir.

Komut satırından geçirilen parametreleri işlemek için koşulların nasıl kullanılacağını gösteren bir bash komut dosyasına argümanların nasıl geçeceğine de bakın.

Bash kabuğu, döngüler için , döngüler ve aritmetik ifadeler gibi diğer programlama yapıları sağlar.