Bash Script Yazmaya Giriş
Alex Scriven
Data Scientist
Diğer dillere benzer şekilde, eşittir ile değişken atayabilirsiniz.
var1="Moon"
Sonra $ ile referans verilir.
echo $var1
Moon
Değişkeninizi istediğiniz gibi adlandırın (mantıklı olsun):
firstname='Cynthia' lastname='Liu'echo "Hi there" $firstname $lastname
Hi there Cynthia Liu
İki değişken de döndü — güzel!
$ yazmayı unutursanız — bu bir değişken değildir!
firstname='Cynthia'
lastname='Liu'
echo "Hi there " firstname lastname
Hi there firstname lastname
Bash, değişken oluştururken boşluklara karşı hoşgörüsüzdür. Boşluk eklememeye dikkat ediniz!
var1 = "Moon"
echo $var1
script.sh: line 3: var1: command not found
Bash’te farklı tırnaklar farklı anlamlara gelir. Hem değişken oluştururken hem yazdırırken.
'sometext') = Kabuk içeriği olduğu gibi yorumlar"sometext") = Kabuk içeriği olduğu gibi yorumlar, ancak $ ve backtick kullanımı hariçSon yöntem ‘kabuk içinde kabuk’ oluşturur, aşağıda özetlenmiştir. Komut satırı programlarını çağırmak için kullanışlıdır. Bu, backtick ile yapılır.
Farklı değişken oluşturma türlerinin etkisine bakalım
now_var='NOW'now_var_singlequote='$now_var' echo $now_var_singlequote
$now_var
now_var_doublequote="$now_var"
echo $now_var_doublequote
NOW
Backtick kullanımını göstermek için date programı işe yarar
Bu programın normal çıktısı:
date
Mon 2 Dec 2019 14:07:10 AEDT
Şimdi kabuk içinde kabuk kullanalım:
rightnow_doublequote="The date is `date`."
echo $rightnow_doublequote
The date is Mon 2 Dec 2019 14:13:35 AEDT.
date programı çağrıldı, çıktısı yakalanıp echo ile satıra eklendi.
Kabuk içinde kabuk kullandık!
Backtick gösterimine eşdeğer bir yöntem vardır:
rightnow_doublequote="The date is `date`."
rightnow_parentheses="The date is $(date)."
echo $rightnow_doublequote
echo $rightnow_parentheses
The date is Mon 2 Dec 2019 14:54:34 AEDT.
The date is Mon 2 Dec 2019 14:54:34 AEDT.
İkisi de aynı çalışır; backtick daha eskidir. Parantez modern kullanımlarda daha yaygındır. (Bkz. http://mywiki.wooledge.org/BashFAQ/082)
Bash Script Yazmaya Giriş