Ich möchte eine Funktion schreiben, die ich aus einem Skript mit vielen verschiedenen Variablen aufrufen kann. Aus einigen Gründen habe ich große Probleme damit. Beispiele, die ich gelesen habe, verwenden immer nur eine globale Variable, aber das würde meinen Code nicht so gut lesbar machen, wie ich es sehe.
Verwendungszweck Beispiel:
#!/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
Ich habe versucht, $1
und so in der Funktion zu verwenden, aber dann wird nur die globale verwendet, von der aus das gesamte Skript aufgerufen wurde. Grundsätzlich suche ich etwas wie $1
, $2
und so weiter, aber im lokalen Kontext einer Funktion. Wie Sie wissen, funktionieren Funktionen in jeder geeigneten Sprache.
result =
mit result=$(($1 + $2))
und fügen echo $result
Sie es danach hinzu, und es funktioniert ordnungsgemäß. $ 1 und $ 2 sind Ihre Funktionsargumente.
echo $1
undecho $2
drin.