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ć $1tej funkcji w funkcji, ale potem bierze ona tylko globalny, z którego został wywołany cały skrypt. Zasadniczo szukam czegoś takiego $1, $2ale w lokalnym kontekście funkcji. Jak wiesz, funkcje działają w dowolnym odpowiednim języku.
result = się result=$(($1 + $2))i dodaj echo $resultpo nim i działa poprawnie, 1 $ i $ 2 to twoje argumenty funkcji.
echo $1iecho $2w tym.