Funkcje bash nie mogą zwracać wartości, tak jak inne standardowe języki programowania. Funkcje bash obsługują instrukcję zwrotu, ale używa innej składni do odczytania wartości zwracania. Możesz uzyskać wartość z funkcji bash na różne sposoby. W tym samouczku dowiesz się, w jaki sposób możesz przekazać dane ciągów z funkcji bash do dzwoniącego za pomocą różnych rodzajów składni bash. Otwórz edytor tekstu, aby przetestować następujące przykłady funkcji BASH, aby zrozumieć, w jaki sposób wartość łańcucha lub liczbą można zwrócić z funkcji bash.
Przykład-1: Korzystanie z zmiennej globalnej
Funkcja BASH może zwrócić wartość ciągu za pomocą zmiennej globalnej. W poniższym przykładzie zmienna globalna ”Retval ' Jest używane. Wartość ciągu jest przypisywana i drukowana w tej zmiennej globalnej przed i po wywołaniu funkcji. Wartość zmiennej globalnej zostanie zmieniona po wywołaniu funkcji. Jest to sposób na zwrócenie wartości ciągu z funkcji bash.
Funkcja F1 ()
retval = „Lubię programowanie”
retval = „Nienawidzę programowania”
Echo $ retval
F1
Echo $ retval
Utwórz plik bash o nazwie Func1.cii z powyższym kodem i uruchom skrypt z terminalu. Tutaj wyjście 'Lubię programowanie„jest przypisywany i drukowany po wywołaniu funkcji.
Przykład-2: Korzystanie z polecenia funkcji
Możesz otrzymać wartość zwracania funkcji bash i przechowywać ją w zmiennej w momencie dzwonienia. W poniższym przykładzie zmienna lokalna, Retval jest używany, a wartość zmiennej lokalnej jest zwracana przez funkcję F2 jest przypisany w zmiennej globalnej, getval który jest wydrukowany później.
funkcja F2 ()
lokalny retval = „za pomocą funkcji bash”
echo „$ retval”
getVal = $ (f2)
Echo $ getval
Utwórz skrypt bash o nazwie Func2.cii z powyższym kodem i uruchom skrypt.
Przykład-3: Za pomocą zmiennej
W poniższym przykładzie wartość zwracana funkcji jest ustawiona na podstawie zmiennej argumentu funkcji. Tutaj wartość jest przekazywana do funkcji F3 za pomocą zmiennej argumentu, getVal1 w momencie wywoływania funkcji. Po sprawdzeniu instrukcji warunkowej wartość zwracania jest przypisywana i drukowana.
funkcja F3 ()
Lokalny arg1 = 1 USD
Jeśli [[$ arg1 != ""]];
Następnie
retval = "funkcja bash ze zmienną"
w przeciwnym razie
Echo „Brak argumentu”
fi
getVal1 = "Funkcja bash"
F3 $ getval1
Echo $ retval
getVal2 = $ (f3)
echo $ getVal2
Utwórz skrypt bash o nazwie Func3.SH z powyższym kodem i uruchom skrypt.
Przykład-4: Korzystanie z instrukcji powrotu
Większość standardowego języka programowania używa instrukcji zwrotu, aby zwrócić wartość z funkcji. Wartości funkcji są zwracane bez użycia jakiejkolwiek instrukcji zwrotu w powyższych przykładach. W poniższym przykładzie instrukcja powrotu służy do zwrócenia wartości liczbowej z funkcji F4. Tutaj, $? służy do odczytu wartości 35, która jest zwracana przez funkcję za pomocą powrót oświadczenie.
funkcja f4 ()
Echo „Bash Return Instrukcja”
Zwrot 35
F4
Echo „Wartość zwracana funkcji to $?"
Utwórz skrypt bash o nazwie Func4.cii z powyższym kodem i uruchom skrypt.
Możesz użyć funkcji bash na różne sposoby, aby zwrócić dowolny ciąg lub wartość liczbową po wywołaniu funkcji. Aby uzyskać więcej informacji, obejrzyj wideo!