[Çözüldü]Değişken atamadaki {1:-} notasyonu

Başlatan juggle, 24 Nisan 2013 - 13:35:35

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

juggle

Merhaba

Bash programlama ile ilgili araştırmalar yaparken şöyle bir atama ile karşılaştım.


filename=${1:-/etc/hosts}


Bu atamanın sağ tarafında yer alan 1:- gibi ifadelerin anlamları hakkında araştırmalarıma rağmen bilgi edinemedim. Bu notasyon sadece dosya yolu atamalarında mı kullanılıyor. Yoksa daha farklı yerlerde kullanımları olabilir mi?
what goes around comes back around

heartsmagic

Bu kullanımı ilk defa görüyorum. Kabuk programlamada çok bilgim yok ancak $1 kullanımı genelde betiklerdeki 1. değişkeni gösterir. ${1} gibi bir kullanım görmedim. Değişkenlerde atamada ise senin sorduğun şeyi hiç görmedim. Bilen birisi izah ederse diye ben de not düşmüş olayım bu başlığa :)
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?


Böylece yalan, dünyanın düzenine dönüştürülüyor.

if

#2
Eğer "filename" değişkeni uçbirim üzerinden belirtilmediyse öntanımlı olarak /etc/hosts'u bu değişkenin değeri olarak yazar.

yazıcı diye betik olutşruduğumuzu ve bu betiğin işinin metin belgesi oluşturmak olduğunu varsayalım. Bu betiği ./yazıcı /etc/deneme olarak çalıştırdığımızda, betik /etc/denemeyi 'filename' değişkenine değer olarak atayp /etc dizini altında deneme adlı bir metin dosyası oluşturacak. Fakat komutu ./yazıcı olarak çalıştırdığımızda, 'filename' değişkeni için bir girdi olmadığından öntanımlı /etc/hosts bu değişkenin değeri olarak atanacak.

http://tldp.org/LDP/abs/html/parameter-substitution.html

juggle

Notasyonun ne işe yaradığını sayenizde anladım. Bilgilendirme için teşekkürler @if.
what goes around comes back around