Chciałbym napisać funkcję, którą mogę wywołać ze skryptu z wieloma różnymi zmiennymi. Z niektórych powodów mam z tym wiele problemów. Przykłady, które czytałem, zawsze używają po prostu zmiennej globalnej, ale to nie uczyniłoby mojego kodu o wiele bardziej czytelnym, o ile widzę.
Przykład zastosowania zgodnego z przeznaczeniem:
#!/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
Próbowałem użyć $1
tej funkcji w funkcji, ale potem bierze ona tylko globalny, z którego został wywołany cały skrypt. Zasadniczo szukam czegoś takiego $1
, $2
ale w lokalnym kontekście funkcji. Jak wiesz, funkcje działają w dowolnym odpowiednim języku.
result =
się result=$(($1 + $2))
i dodaj echo $result
po nim i działa poprawnie, 1 $ i $ 2 to twoje argumenty funkcji.
echo $1
iecho $2
w tym.