Bash ‘For’ Döngüsü: Öğretici ve Örnekler

Bash ‘For’ Döngüsü: Öğretici ve Örnekler

Bash (Bourne Again Shell), GNU/Linux işletim sistemlerinde bir kabuk komut istemi ve betik dilidir. Çoğu Linux dağıtımı için varsayılan kabuktur.

Çoğu betik dili gibi Bash, benzer görevleri birden çok kez tekrarlamak için döngü sözdizimleri sağlar. Bu yazımızda, nasıl kullanılacağını öğreneceğiz. for Bash’de döngü.

Tipik bir Bash betiği, birbiri ardına yürütülecek bir dizi komut içerir. Değişkenler, dizeleri, tamsayı indeks değerlerini, bir komutun sonuçlarını vb. saklamak için kullanılabilir. Kullanıcı belirli bir komutu birden çok kez yürütmek istediğinde döngüler gereklidir. Bir komutun çıktısı bir liste biçiminde olduğunda ve listedeki her sonuç için ikinci bir komut çalıştırılacağında özellikle kullanışlıdır.

için genel sözdizimi for Bash’deki döngü:

burada, <variable> geçerli bir Linux kabuk değişkeni adı olması gereken bir Bash değişkenidir, yani ad, harfler(az, AZ), sayılar (0-9) ve alt çizgi (_) kombinasyonunu içerir ve bir harf veya bir alt çizgi.

NS <range/list> ya döngülenecek özel bir tamsayı dizinleri aralığı ya da özel bir tamsayı veya dize listesidir. Başka bir Linux komutu da içerebilir, ancak bu komutun çıktısı boşluklarla veya yeni satır karakterleriyle ayrılmalıdır, yani Bash tarafından bir listeye ayrıştırılabilir (Bash’teki bir liste temelde bir boşluk veya yeni satırla ayrılmış bir değerler topluluğudur. ).

Hangi komut(lar) yürütülecekse, bunun içine yerleştirilmelidir. do..done engellemek.

Birkaç basit örnek görelim.

Bir dizi Tamsayı değeri üzerinde döngü: Aşağıdaki kod, dir1, dir2, dir3’ten dir10’a kadar olan dizinleri oluşturur.

Sabit değerler listesinde döngü: Aşağıdaki kod, verilen sabit listedeki her dizeyi veya tamsayıyı yazdırır.

Bir komutun çıktısında döngü: Aşağıdaki kod, çıktısı üzerinde döngü yapar ls ve her dosyanın adını verilen biçimde yazdırır.

Bash’de C programlama diline benzer ifade tabanlı bir sözdizimi de mümkündür:

Buraya, Expression 1 indeks değişken(ler)inin başlatılmasıdır. Expression 2 döngüden çıkılması gereken koşuldur; bu koşul her yinelemede kontrol edilir. Expression 3 indeks değişken(ler)inin değerindeki artışı/azalmayı/değiştirmeyi belirtir

Aşağıdaki örnek, 0 ile 4 arasındaki değerleri basitçe yazdırır:

Aşağıdaki örnek, hiçbir ifade belirtilmediğinden sonsuz bir döngü oluşturur:

Koşullu ifadeyi de kullanabiliriz if döngü içinde. NS if ifadesi ile kullanılabilir break döngüden koşullu çıkış için.

Yukarıdaki döngü 0’dan 4’e kadar olan sayıları yazdıracaktır. Ardından i’nin değeri 5 olduğunda döngüden çıkacaktır. Bu, bir komut belirli bir çıktı verdiğinde bir döngüden çıkılacağı zaman özellikle kullanışlıdır. Örneğin, aşağıdaki döngü boş bir dosya bulduğunda ve bulduğunda bozulur.

Komuta wc -c <filename> dosyadaki satır sayısını yazdırır <filename>. Formatta yazdırır <no_of_lines> <filename>, Örneğin, 10 test.txt. Satır sayısı 0 olduğunda yani boş bir dosya olduğunda döngüden çıkıyoruz.

C ve diğer birçok programlama diline benzer şekilde bash’ın da bir continue deyimi, belirli bir koşul karşılanıyorsa, bir döngüdeki yinelemenin kalan kısmını atlamak için.

Yukarıdaki döngü, 5 dışında 0’dan 10’a kadar olan sayıları yazdıracaktır, çünkü yineleme sırasında i=5 yineleme ile başlangıçta döngüdeki kodun geri kalanını atlayacak bir devam ifadesi vardır. i=6.

Aşağıdaki örnekte, bir dosyadaki satır sayısını yazdırıyoruz ve belirli bir yineleme continue bu bir dizinse ve bir dosya değilse.

[[ -d $file ]] dosyanın bir dizin olup olmadığını kontrol eder. Eğer öyleyse, bir sonraki dosyaya, yani bir sonraki yinelemeye geçiyoruz. Bir dizin değilse, dosyadaki satır sayısını kullanarak yazdırırız. wc komutu, daha önce de gösterildiği gibi.

Döngü sözdizimi, doğrudan Bash kabuğunda veya bir kabuk komut dosyasından kullanılabilir. Birkez for kabuğa döngü sözdizimi girilirse, kabuk kullanıcının döngülenecek komutları sürdürmesine izin vermek için komut istemini sürdürür.

Veya kullanıcı bunu bir komut dosyasına kaydedebilir ve komut dosyasını çalıştırabilir.

NS #!/bin/bash başlangıçta dosya yürütüldüğünde kullanılacak yorumlayıcıyı belirtir. Bash, günümüzde en yaygın kullanılan kabuk olmasına rağmen, bazı kullanıcılar aşağıdaki gibi kabukları tercih eder: zsh, bu dosyanın başında bash yerine belirtilmelidir.

Yürütme izinleri vermek için bu dosya için şunu çalıştırın:

Nihayet, dosyayı yürütmek için, Çalıştırmak:

NS for Bash’deki döngü oldukça basit bir özelliktir ancak hemen hemen her tür karmaşık komut dosyası senaryosunda kullanımı vardır. İster normal ister gelişmiş bir Linux kullanıcısı olun, ister Sistem Yönetimi ve DevOps görevleri için otomasyonu öğrenmeye başlayın, bunu öğrenmek uzun bir yol kat eder.

Leave a Reply

Your email address will not be published. Required fields are marked *

*