Birçok farklı değişkenli bir senaryodan çağırabileceğim bir fonksiyon yazmak istiyorum. Bazı nedenlerden dolayı bunu yaparken çok sorun yaşıyorum. Okuduğum örnekler her zaman sadece global bir değişken kullanır, ancak kodumu görebildiğim kadarıyla daha okunabilir hale getirmez.
Kullanım amacı örneği:
#!/bin/bash
#myscript.sh
var1=$1
var2=$2
var3=$3
var4=$4
add(){
result=$para1 + $para2
}
add $var1 $var2
add $var3 $var4
# end of the script
./myscript.sh 1 2 3 4
Ben $1
ve böyle işlevini kullanarak denedim , ama sonra sadece tüm komut dosyası çağrıldı küresel olanı alır. Temelde ne arıyorum gibi bir şey $1
, $2
vb ama bir fonksiyonun yerel bağlamda. Bildiğiniz gibi, fonksiyonlar herhangi bir uygun dilde çalışır.
result =
ile result=$(($1 + $2))
ve ekleme echo $result
ondan sonra ve $ 1 ve $ 2 sizin fonksiyonları argümanlar vardır, düzgün çalışır.
echo $1
veecho $2
içine.