Betiklerde Değişkenler
Coddy'nin Terminal Journey'sinin Temeller bölümünün bir parçası. Ders 68 / 82.
Değişkenler, betiklerinizi esnek ve yeniden kullanılabilir hâle getirir. Değerleri sabit olarak kodlamak yerine bunları değişkenlerde saklayabilir ve betiğiniz boyunca bu değişkenlere başvurabilirsiniz.
Bir betik içinde değişken oluşturmak için terminalde öğrendiğin söz diziminin aynısını kullan: eşittir işaretinin çevresinde boşluk bırakma. Değişkenin değerini kullanmak için adının önüne dolar işareti koy:
#!/bin/bash
greeting="Hello"
name="World"
echo "$greeting, $name!"Bu betik Hello, World! çıktısını verir. greeting ve name değişkenleri, betik çalıştırıldığında yerine konan metni depolar.
Değişkenler, aynı değeri birden çok kez kullanmanız gerektiğinde özellikle yararlı olur. Bir dosya yoluna birkaç yerde başvuruyorsanız, onu bir değişkende saklamak, yalnızca bir kez değiştirmeniz gerektiği anlamına gelir:
#!/bin/bash
backup_dir="/home/user/backups"
echo "Creating backup in $backup_dir"
mkdir -p "$backup_dir""$backup_dir" etrafındaki tırnak işaretlerine dikkat edin. Değişkenleri çift tırnak içine almak iyi bir uygulamadır; çünkü boşluk içeren yolları veya değerleri doğru şekilde işler. Tırnak işaretleri olmadan /my documents gibi bir yol komutunuzu bozardı.
Betiklerdeki değişkenler terminaldekiyle aynı şekilde çalışır, ancak yalnızca betik çalıştığı sürece var olurlar. Betik tamamlandığında bu değişkenler ortadan kalkar.
Görev
Kolayintro.sh adlı, kişiselleştirilmiş bir mesaj görüntülemek için değişkenleri kullanan bir kabuk betiği oluşturun.
Betiğiniz şunları yapmalıdır:
- Shebang satırıyla başlayın (
#!/bin/bash) languagedeğerine sahipBashadlı bir değişken oluşturunskilldeğerine sahipscriptingadlı bir değişken oluşturun- Her iki değişkeni şu biçimde yazdırmak için
echokullanın:Learning Bash scripting!
Betiği çalıştırılabilir hâle getirin ve çalıştırın. Çıktınız şu olmalıdır:
Learning Bash scripting!Yazdığınız her satırı tek tırnak içine alın:
echo 'echo "Hello $name"' >> script.sh. Tek tırnaklar, dosya yazılırken kabuğun$nameifadesini değiştirmesini engeller; böylece betik değişkeni korur ve çalıştırıldığında değişkeni genişletir. Çift tırnaklar ise değeri hemen yerine koyar.
İpucu: Yeniden yönlendirmeyle birlikte
echokullanarak betiği oluşturun. Echo ifadenizde değişkenlere$ile başvurmaya dikkat edin; örneğinecho "Learning $language $skill!"
Kendin dene
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Temeller bölümündeki tüm dersler
4Dizinler
Bir Dizin OluşturBir Dizin KopyalaBir Dizin Taşı ve Yeniden AdlandırBir Dizin SilÖzet - Dizin İşlemleri7Dosya İçeriği
Head ve TailKelime SayısıSort KomutuUnik KomutuGrep TemelleriBayraklarla GrepÖzet - Metin Dedektifi10Günlük Analizörü Projesi
Proje Genel BakışıGünlük Dosyasını Görüntüleme13Kabuk Betikleme Temelleri
Kabuk Betiği NedirBir Betik Oluştur ve ÇalıştırBetiklerde DeğişkenlerBetiklerde Kullanıcı GirdisiIf İfadesiFor DöngüsüWhile DöngüsüÖzet - Sayı Tahmincisi2Navigasyon
Çalışma Dizini'ni YazdırDosyaları ListeleDizin DeğiştirMutlak ve Göreli YollarEv ve Kök DizinÖzet - Yolunu Bul8Yönlendirme
Standart ÇıktıDosyaya Üzerine YazmaDosyaya EklemeStandart GirdiStandart HataÖzet - Günlük Oluşturucu3Dosyalar
Bir Dosya OluşturBir Dosya OkuBir Dosya KopyalaBir Dosyayı Taşı ve Yeniden AdlandırBir Dosya SilÖzet - Dosya İşlemleri6Joker Karakterler ve Desenler
Yıldız Joker KarakteriSoru İşareti Joker KarakteriKöşeli Parantez JokerleriJoker Karakterleri BirleştirmeÖzet - Seçici İşlemler9Borulama
Boru Nedir?İki Komutu ZincirlemeBirden Fazla Komutu ZincirlemeGrep ile BoruÖzet - Veri Boru HattıKendi başına pratik yap: Terminal playground