Linux Bash'te Komut Dosyası Yazma ⋆ ALexHost SRL

Tüm Barındırma hizmetlerimizde becerilerinizi test edin ve % 15 indirim kazanın!

Ödeme sırasında kodu kullanın:

Skills
18.12.2024

Linux Bash’te Komut Dosyası Yazma

Bash betikleri Linux’ta görevleri otomatikleştirmek, sistem işlemlerini yönetmek ve karmaşık işlemleri gerçekleştirmek için güçlü bir yoldur. Kullanıcılar Bash betikleri yazarak birden fazla komutu tek bir betikte birleştirebilir, zamandan tasarruf edebilir ve hataları azaltabilir. Çoğu Linux dağıtımında varsayılan kabuk olan Bash, Linux yöneticileri, geliştiricileri ve meraklıları için vazgeçilmez bir araçtır.

Bu makalede, Linux‘ta Bash betiklerinin nasıl yazılacağını ve çalıştırılacağını, temel bilgileri, anahtar kavramları ve pratik örnekleri kapsayarak inceleyeceğiz.


Bash Komut Dosyası Nedir?

Bash betiği, Bash kabuğu tarafından yürütülebilen bir dizi komut içeren düz bir metin dosyasıdır. Kullanıcıların tekrarlayan görevleri otomatikleştirmesine, iş akışları oluşturmasına ve Linux işletim sistemiyle etkileşime girebilecek daha karmaşık komut dizileri oluşturmasına olanak tanır.

Bash komut dosyaları aşağıdaki gibi görevleri gerçekleştirebilir:

  • Dosya manipülasyonu (kopyalama, taşıma, yeniden adlandırma)
  • Sistem yönetimi (süreçleri izleme, kullanıcıları yönetme)
  • Yazılım kurulumunun otomasyonu
  • Yedeklemeleri ve zamanlanmış görevleri çalıştırma

Basit Bir Bash Komut Dosyası Nasıl Yazılır

1. Bash Komut Dosyası Oluşturma

Bir Bash betiği oluşturmak için yeni bir metin dosyası oluşturmanız gerekir. .sh uzantılı bir betik dosyası oluşturmak için nano, vim veya gedit gibi bir metin düzenleyici kullanın (örn. myscript.sh).

nano myscript.sh

2. Shebang’i ekleyin (#!)

Bir Bash betiğinin ilk satırına shebang adı verilir ve sisteme betiği çalıştırmak için hangi yorumlayıcıyı kullanacağını söyler. Bash betikleri için shebang satırı aşağıdaki gibi görünür:

#!/bin/bash

Bu, kullanıcı için farklı bir kabuk varsayılan olsa bile betiğin Bash kabuğu kullanılarak çalıştırılmasını sağlar.

3. Komut Dosyasına Komut Yazma

Shebang’den sonra, betiğin çalıştırmasını istediğiniz komutları ekleyebilirsiniz. Örneğin:

#!/bin/bash # Bu, kullanıcıyı selamlamak için basit bir betiktir echo “Merhaba, $USER!” echo “Bugün $(tarih)” echo “Geçerli dizininiz $(pwd)”
  • echo: Metni terminale yazdırır.
  • $USER: Geçerli kullanıcı adını içeren bir sistem değişkeni.
  • $(date): Geçerli tarih ve saati yazdıran date komutunu çalıştırır.
  • $(pwd): Mevcut çalışma dizinini yazdırır.

4. Komut Dosyasını Çalıştırılabilir Yapın

Komut dosyasını çalıştırmadan önce, çalıştırma izinlerini vermeniz gerekir. Komut dosyasını çalıştırılabilir hale getirmek için chmod komutunu kullanın:

chmod x myscript.sh

5. Komut Dosyasını Çalıştırın

Komut dosyası çalıştırılabilir hale geldiğinde, aşağıdaki komutu kullanarak terminalden çalıştırabilirsiniz:

./myscript.sh

Komut dosyası daha sonra içindeki komutları çalıştıracak ve çıktıyı terminalde görüntüleyecektir.


Bash Komut Dosyalarındaki Değişkenler

Bash komut dosyaları, verileri depolamak ve işlemek için değişkenleri kullanmanıza olanak tanır. Değişkenler dizeler, sayılar ve komut çıktısı gibi bilgileri saklamak için kullanılır.

Değişken Tanımlama Örneği:

#!/bin/bash # Değişkenleri tanımlama name=”John” age=25 # Değişkenleri bir betikte kullanma echo “Merhaba, benim adım $name.” echo “Ben $age yaşındayım.”
  • Değişkenler = işareti etrafında boşluk bırakılmadan tanımlanır.
  • Bir değişkenin değerini kullanmak için başına $ sembolü ekleyin (örn. $name).

Bash’te Koşullu İfadeler

Bash komut dosyaları, belirli koşullara göre komutları çalıştırmanıza olanak tanıyan koşullu deyimleri destekler.

If Deyimi Örneği:

#!/bin/bash # Kullanıcı girdisi isteyin echo “1 ile 10 arasında bir sayı girin:” read sayı # Sayının aralık içinde olup olmadığını kontrol edin if [ $sayı -ge 1 ] && [ $sayı -le 10 ]; then echo “Sayı aralık içinde.” else echo “Sayı aralık dışında.” fi
  • read: Kullanıcı girdisini okur ve bir değişkende saklar.
  • if: Koşullu ifadeyi başlatır.
  • [ ]: Koşulları test etmek için kullanılır (örn. karşılaştırmalar).
  • -ge: Büyüktür veya eşittir.
  • -le: Daha küçük veya eşit.
  • &&: Mantıksal AND operatörü.

Bash Komut Dosyalarındaki Döngüler

Döngüler komutları birden çok kez tekrarlamak için kullanılır ve Bash hem for hem de while döngülerini destekler.

For Döngüsü Örneği:

#!/bin/bash # Bir sayı aralığı boyunca döngü for i in {1..5}; do echo “Iteration $i” done

Bu döngü “Yineleme” metnini ve ardından 1’den 5’e kadar olan sayıları yazdırır.

While Döngüsü Örneği:

#!/bin/bash # Bir sayaç başlatın sayaç=1 # Sayaç 5’ten küçük veya 5’e eşitken döngü while [ $sayaç -le 5 ]; do echo “Sayaç: $sayaç” sayaç=$((sayaç 1)) # Sayacı artır done

Bu döngü, sayaç değerini 5’e ulaşana kadar artıracak ve yazdıracaktır.


Bash Komut Dosyalarındaki İşlevler

Bash komut dosyalarında, komut dosyası boyunca tekrar kullanılabilecek komutları gruplamak için işlevler tanımlayabilirsiniz.

Bir Fonksiyon Örneği:

#!/bin/bash # Selamlama mesajı yazdırmak için bir işlev tanımlayın greet_user() { echo “Merhaba, $1!” } # İşlevi bir argümanla çağırın greet_user “Alice”
  • greet_user: İşlev adı.
  • $1: Fonksiyona aktarılan ilk argümanı temsil eder.

Komut Satırı Bağımsız Değişkenleri ile Çalışma

Bash komut dosyaları çalıştırıldıklarında komut satırı argümanlarını kabul edebilir. Bu argümanlar özel değişkenlerde saklanır: $1, $2, $3, vb.

Bağımsız Değişkenli Komut Dosyası Örneği:

#!/bin/bash # İki argüman sağlanıp sağlanmadığını kontrol edin if [ $# -ne 2 ]; then echo “Usage: $0 ” exit 1 fi # Argümanları kullan echo “Argüman 1: $1” echo “Argüman 2: $2”
  • $#: Komut dosyasına aktarılan bağımsız değişken sayısı.
  • $0: Kodun adı.
  • $1, $2: Komut dosyasına aktarılan birinci ve ikinci bağımsız değişkenler.

Bash Komut Dosyalarında Hata Ayıklama

Bir Bash betiğinde hata ayıklamak için, betiği çalıştırırken -x seçeneğini ekleyebilirsiniz. Bu, her komutu yürütüldükçe gösterecektir.

Örnek:

bash -x myscript.sh

Bu, her komutu çıktısıyla birlikte yazdırarak koddaki hataları belirlemenize yardımcı olur.


Sonuç

Linux’ta Bash betikleri yazmak, tekrarlayan görevleri otomatikleştirmenize, sistem yönetimi işlemlerini gerçekleştirmenize ve karmaşık iş akışlarını verimli bir şekilde oluşturmanıza olanak tanır. Bash komut dosyalarında ustalaşarak üretkenliği artırabilir ve Linux ortamınızı ihtiyaçlarınıza göre özelleştirebilirsiniz. İster yeni başlıyor ister komut dosyası yazma becerilerinizi geliştirmek istiyor olun, Bash komut dosyası yazma her Linux kullanıcısı için önemli bir araçtır.

Tüm Barındırma hizmetlerimizde becerilerinizi test edin ve % 15 indirim kazanın!

Ödeme sırasında kodu kullanın:

Skills