Belge

Bash: Kullanıcı Girişi Nasıl İstenir?

Bu eğitimde, komut dosyalarında kullanıcı girişi elde etmeye yönelik güçlü bir araç olan Bash’teki read komutunun çok yönlü kullanımı ele alınmaktadır.  Bu komutu anlamak, etkileşimli ve kullanıcıya yanıt veren komut dosyaları oluşturmak için çok önemlidir.

Read Komutunu Anlamak

Bu derste Bash komut dosyası oluşturmada read komutunun çok yönlülüğünü keşfedeceğiz.  Okuma komutu, komut dosyalarının etkileşimli hale gelmesine olanak tanıyan kullanıcı girişinin yakalanmasında etkilidir.  Basit istemlerden, şifrelerin sessiz girilmesi veya aynı anda birden fazla değerin okunması gibi daha karmaşık senaryolara kadar, okumayı anlamak, verimli ve kullanıcı dostu komut dosyaları yazma yeteneğinizi derinleştirir.

Örneklere dalmadan önce, kullanıcı girişinin büyük ölçüde değişebileceğini, tek bir kelime veya sayı kadar basit veya bir cümle, şifre veya hatta birden fazla veri parçası gibi daha karmaşık olabileceğini anlamak önemlidir.  Her senaryo, bu girdiyi nasıl yakalayıp ele aldığımız konusunda farklı bir yaklaşım gerektirir.  Üstelik kullanıcı deneyimini dikkate almak çok önemlidir.  Örneğin, şifreler gibi hassas veriler istenirken girişin ekranda görüntülenmemesini sağlamak temel bir güvenlik uygulamasıdır.

  1. Read Komutu Temel Kullanımı: Bu örnek, kullanıcı girişini yakalamak için read komutu kullanımını gösterir.  Komut dosyası, kullanıcıdan adını girmesini ister, girişi bekler ve ardından kullanıcıyı adıyla karşılar.
    #!/bin/bash
    echo "Enter your name:"
    read name
    echo "Hello, $name!"
  • Çoklu Değerlerin Okunması: Burada read komutu, tek seferde birden fazla girişi yakalamak için kullanılır.  Kullanıcıdan üç değer girmesi istenir ve bunlar daha sonra üç ayrı değişkende saklanır ve tekrar görüntülenir.
    #!/bin/bash
    echo "Enter three values:"
    read a b c
    echo "You entered: $a, $b, $c"
  • Sessiz Giriş (Şifreler için): Şifreler gibi hassas bilgiler için read -s girişi gizli tutar.  Bu, şifrenin ekranda veya etraftaki kişiler tarafından görülmemesini sağlar.
    #!/bin/bash
    echo "Enter your password:"
    read -s password
    echo "Password is set"
  •  
    Silent Bash scrip Input
  • Read ile Zaman Sınırlı Giriş Okuma: Bu örnek, kullanıcı girişi için bir zaman sınırı ayarlamak amacıyla read -t öğesini kullanır.  Burada kullanıcının yanıt vermesi için 5 saniyesi vardır ve bu sürenin ardından komut dosyası, kullanıcının girişi olmadan devam eder.
    #!/bin/bash
    echo "Enter your name (you have 5 seconds):"
    read -t 5 name
    echo "Hello, $name!"
  • Read komutunu metin ile kullanma: read -p kullanmak, bir metinin read komutuna entegre edilmesine olanak tanır, böylece komut dosyası daha kısa ve istemi kullanıcı için daha belirgin hale gelir.
    #!/bin/bash
    read -p "Enter your age: " age
    echo "You are $age years old."
  • Tüm Satırı Okuma: Read -r seçeneği, ters eğik çizgileri kaçış karakterleri olarak yorumlamadan metnin tamamını okumak için idealdir.  Bu, dosya yollarını veya ters eğik çizgi içeren diğer verileri içeren girişler için kullanışlıdır.
    #!/bin/bash
    echo "Enter a full sentence:"
    read -r sentence
    echo "You said: $sentence"

Yazının orijinalini buradan okuyabilirsiniz.