Android

Döngüde bas

Основы Ubuntu Linux: apt-get, bash, командная строка

Основы Ubuntu Linux: apt-get, bash, командная строка

İçindekiler:

Anonim

Döngüler programlama dillerinin temel kavramlarından biridir. Belirli bir koşul karşılanıncaya kadar bir dizi komut çalıştırmak istediğinizde döngüler kullanışlıdır.

Bash gibi komut dosyası dillerinde, döngüler tekrarlanan görevleri otomatikleştirmek için kullanışlıdır. Bash betiklemesinde, döngü, while döngüsü ve loop'a kadar 3 temel döngü yapısı vardır.

Bu öğretici, Bash'teki while döngülerinin temellerini ve bir döngünün akışını değiştirmek için break ve continue ifadelerini açıklar.

Döngüde Bash

While döngüsü, verilen koşul doğru olarak değerlendirildiği sürece belirli bir komut kümesini bilinmeyen sayıda gerçekleştirmek için kullanılır.

Bash while döngüsü aşağıdaki formu alır:

while do done

Koşul, komutlar yürütülmeden önce değerlendirilir. Koşul true olarak değerlendirilirse, komutlar yürütülür. Aksi takdirde koşul false olarak değerlendirilirse döngü sona erdirilir ve program kontrolü aşağıdaki komuta iletilir.

Aşağıdaki örnekte, her yinelemede döngü, i değişkeninin geçerli değerini yazdırır ve değişkeni bir arttırır.

i=0 while do echo Number: $i ((i++)) done

Sal döngü, i ikiden az veya eşit olduğu sürece yinelenir. Aşağıdaki çıktıyı üretecektir:

Number: 0 Number: 1 Number: 2

Döngüde Sonsuz

Sonsuz döngü, süresiz olarak tekrar eden ve asla sona ermeyen bir döngüdür. Koşul her zaman doğru olarak değerlendirilirse sonsuz bir döngü elde edersiniz.

Aşağıdaki örnekte yerleşik komutu kullanıyoruz : sonsuz döngü oluşturmak için her zaman true değerini döndürür. Ayrıca, true yerleşik komutu veya her zaman true değerini döndüren başka bir ifadeyi kullanabilirsiniz.

while: do echo "Press to exit." sleep 1 done while: do echo "Press to exit." sleep 1 done

Yukarıdaki while döngüsü süresiz olarak çalışır. CTRL+C tuşlarına basarak döngüyü sonlandırabilirsiniz.

İşte tek satırlık bir eşdeğer:

while:; do echo 'Press to exit.'; sleep 1; done while:; do echo 'Press to exit.'; sleep 1; done

Dosyayı Satır Satır Okuma

While döngüsünün en yaygın kullanımlarından biri, bir dosyayı, veri akışını veya değişkeni satır satır okumaktır.

Aşağıdaki örnekte while döngüsü /etc/passwd dosyasını satır satır okuyacak ve her satırı yazdıracaktır.

file=/etc/passwd while read -r line; do echo $line done < "$file"

While döngüsünü bir koşulla denetlemek yerine, döngüyü denetleyen komut olan bir dosyayı read aktarmak için giriş yeniden yönlendirmesini ( < "$file" ) kullanıyoruz. While döngüsü son satır okunana kadar çalışır.

Dosyayı satır satır read , ters eğik çizginin bir kaçış karakteri gibi davranmasını önlemek için her zaman -r seçeneği ile read kullanın.

Varsayılan olarak, read komutu önde gelen / sondaki boşluk karakterlerini (boşluklar ve sekmeler) keser. Bu davranışı önlemek için read komutundan önce IFS= seçeneğini kullanın

file=/etc/passwd while IFS= read -r line; do echo $line done < "$file"

Break and Continue İfadeleri

Break ve continue ifadeleri while döngüsü yürütülmesini denetlemek için kullanılabilir.

Break Bildirimi

Break deyimi geçerli döngüyü sonlandırır ve program denetimini sonlandırılmış döngüyü izleyen komuta iletir. Genellikle belirli bir koşul karşılandığında döngüyü sonlandırmak için kullanılır.

Aşağıdaki örnekte, geçerli yinelenen öğe 2 eşit olduğunda döngünün yürütülmesi kesilecektir.

i=0 while do echo "Number: $i" ((i++)) if]; then break fi done echo 'All Done!'

Number: 0 Number: 1 All Done!

Bildirime Devam Et

Continue ifadesi bir döngünün geçerli yinelemesinden çıkar ve program denetimini döngünün bir sonraki yinelemesine geçirir.

Aşağıda, geçerli yinelenen öğe 2 eşit olduğunda, devam ifadesi yürütmenin döngünün başına dönmesine ve bir sonraki yinelemeye devam etmesine neden olacaktır.

i=0 while do ((i++)) if]; then continue fi echo "Number: $i" done echo 'All Done!'

Number: 1 Number: 3 Number: 4 Number: 5 All Done!

Sonuç

Şimdiye kadar bash döngüsünü nasıl kullanacağınızı iyi anlamanız gerekir.

bash loop terminali