Utwórz funkcje bash z argumentami

Utwórz funkcje bash z argumentami

Aby utworzyć wydajny kod, funkcje BASH są używane w scenariuszach powłoki. Zasadniczo są to zestaw instrukcji, które można ponownie użyć w całym programie. Ponadto umożliwia programistom długie, złożone skrypty na możliwe do zarządzania fragmenty, które można w razie potrzeby wywołać. W tym artykule przejdziemy przez sposób przekazania argumentu do funkcji bash, aby zbudować funkcję za pomocą argumentu. Parametr może być ciągiem, liczbą całkowitą lub czymś innym. W tym artykule zostaną wykorzystane różne metody wysyłania argumentów do funkcji BASH.

Przekazywanie argumentu do funkcji BASH

W tej sekcji pokażemy, jak podać argument za funkcją bash w Linux. Ale najpierw pokażemy, jak stworzyć funkcję w Bash. Korzystanie z funkcji w skryptach bash jest fantastycznym sposobem ponownego wykorzystania treści. Grupa poleceń, które można wielokrotnie wywołać w skrypcie Bash, może być określana jako moduł bash. Funkcje w Bash są tam, aby Twoje programy były łatwiejsze do odczytania i zapobiegania wielokrotnym wprowadzaniu tego samego skryptu.

Do pisania programu użyjemy powłoki bash, czyli „#!/bin/bash.”Następnie w poniższym wierszu zdefiniujemy zasadniczo funkcję zdefiniowaną przez użytkownika, więc nadamy jej nazwę naszego wyboru. Tutaj nazwiemy funkcję „FUNC” i użyjemy okrągłych nawiasów „()”, o której wiemy, że są używane z funkcjami. Następnie użyjemy nawiasów kręconych w tych nawiasach. Używamy polecenia „echo”, aby wydrukować instrukcję zawierającą tekst „Kocham mój kraj”, a ponieważ to stwierdzenie jest osadzone w funkcji, zostanie wyświetlone w wyjściu, gdy funkcja jest wywoływana. Funkcja zostanie teraz wywołana na końcu skryptu. Po prostu wprowadź nazwę metody „FUNC” bez żadnych nawiasów, aby to osiągnąć.

#!/bin/bash
func ()
echo „Kocham mój kraj”

Func

Polecenie do wyświetlenia wyjścia skryptu bash w terminalu zostanie teraz wprowadzone do terminala. Aby to zrobić, najpierw wprowadzimy słowo kluczowe „Bash”, a następnie przestrzeń, a następnie nazwa skryptu Bash „FileBash.cii".

Linux@Linux: ~/Desktop $ bash FileBash.cii

Ciąg, którego użyliśmy w funkcji „FUNC” i chcieliśmy wyświetlić na ekranie po wywołaniu funkcji, zostanie wyświetlony po uruchomieniu tego polecenia. Jak widać, zdanie „Kocham mój kraj” jest wyświetlane na poniższym obrazku.

Teraz, w poniższej sekcji, podamy argument za funkcją bash. Aby to zrobić, skonstruujemy skrypt w Bash, w którym najpierw dodamy powłokę, tak jak wcześniej, a następnie zdefiniujemy funkcję o nazwie „func1 ()”, a następnie nawiasów kręconych. Korpus funkcji znajduje się w kręconych nawiasach. Dlatego wewnątrz ciała funkcji używamy polecenia „Echo” do wydrukowania nazwy funkcji „FUNC1” i przekazywania parametru BASH „1 USD”. Po wyjściu z ciała funkcji nazywamy go w następującym wierszu i przekazujemy ciąg „Goodluck” jako argument. Ten ciąg jest przechowywany w zmiennej „1 USD”.

#!/bin/bash
func1 ()
Echo „FUNC1 1 USD”

FUNC1 „Goodluck”

Dane wyjściowe skryptu jest następnie wyświetlane na terminalu, wpisując to samo polecenie, które jest również wykorzystywane w poprzednim kroku.

Linux@Linux: ~/Desktop $ Bash FileBash.cii

Jak widać na poniższym obrazku, kiedy uruchomiliśmy to polecenie, wyświetlił instrukcję zawierającą nazwę funkcji „FUNC1”, a także ciąg „Goodluck”, który dostarliśmy jako argument funkcji Bash. Zostanie zapisane w parametrze „1 USD”.

Przekazywanie wielu argumentów do funkcji BASH

Chociaż ta sekcja jest podobna do tej przed nim, przekazamy tutaj wiele parametrów, a nie pojedynczy argument we wcześniejszej sekcji. W tym celu opracujemy skrypt, w którym najpierw dodamy powłokę bash, czyli „#!/bin/bash ”. Następnie zdefiniuj funkcję o nazwie „user_function ()”, a następnie korpus funkcji, który jest tworzony za pomocą nawiasów kręconych. Pomiędzy tymi nawiasami wykonujemy identyczne kroki, jak w poprzedniej sekcji, wprowadzając instrukcję „User_Function”, która jest nazwą funkcji, a parametry „1 USD”, „2 USD”, „3 USD” i „4 USD” z Polecenie „echo”.

Następnie, w poniższym kroku, wywołamy funkcję argumentami za pomocą nazwy funkcji „User_function”, a także czterech ciągów, które składają się na argument: „I”, „Miłość”, „My” i „kraj”. Strings muszą być napisane z odwróconymi przecinkami. Parametry Bash zostaną zastąpione tymi ciągami, które dostarczamy jako argumenty. Pierwszy ciąg będzie przechowywany w „1 USD”, drugi w „2 USD”, trzeci w „3 USD”, a czwarty w „4 USD”.

#!/bin/bash
user_function ()
Echo „Funkcja_ use 1 $ 2 $ 3 $ 4”

User_function „I” „Love” „My” „Kraj”

Teraz użyjemy polecenia, aby otworzyć skrypt bash na terminalu, najpierw wpisując „bash”, a następnie nazwę skryptu: „FileBash.cii".

Linux@Linux: ~/Desktop $ Bash FileBash.cii

Możesz zobaczyć na poniższym obrazku, że po pomyślnym wykonywaniu polecenia wyświetla nazwę funkcji „Funkcja użytkownika”, a także ciąg „Kocham mój kraj”, który dostarczyliśmy jako argument w funkcji Bash.

Stosując metodę podziału w funkcji BASH z argumentem całkowitym

W tej sekcji podzielimy liczbę całkowitą za pomocą skryptu bash i wyślemy wynik jako wejście do funkcji. Aby to osiągnąć, napiszmy skrypt, w którym najpierw dodamy powłokę bash, tak jak w poprzednim kroku. Następnie zdefiniuj funkcję „funkcja użytkownika ()”, a następnie użyj nawiasów kręconych w środku, w której definiujemy zmienną „Div” i przechowujemy operację podziału za pomocą znaku dolara „$.„Następnie używamy podwójnych okrągłych nawiasów, w których używamy dwóch parametrów,„ 1 USD ”i„ 2 USD ”, a między tymi dwoma parametrami wstawiamy operatora podziału do wykonywania podziału.

Następnie używamy polecenia „Echo” w następującym wierszu, przekazując instrukcję wejściową „Dzielenie 60 przez 10 IS”, a także argument „Div” z wartością „$”, ponieważ odpowiedź oddziału jest w nim przechowywana. Wartości, których używamy w dziale, „60” i „10”, zostaną przekazane jako argumenty do funkcji, gdy wywołujemy ją za pomocą funkcji „User_Define."

#!/bin/bash
user_function ()
div = $ ((1 USD / 2 USD))
Echo „Dzielenie 60 przez 10 to: $ div”

User_function 60 10

Do wyświetlania wyniku na ekranie należy użyć następujące polecenie jako kolejny krok.

Linux@Linux: ~/Desktop $ Bash FileBash.cii

Możesz zobaczyć wynik dywizji pokazany podczas uruchomienia tego polecenia. Wynik to „6”, jak pokazano w oświadczeniu, które stwierdza „Dywizja 60 do 10 to: 6."

Wniosek

W tym artykule omówiono, jak napisać funkcję Bash w Linux, która przyjmuje argumenty. W funkcji BASH zdefiniowano różne techniki wysyłania argumentów. W pierwszej sekcji tego artykułu omówiliśmy, jak napisać skrypt w Bash i zbudować funkcję, a także jak podać jeden argument funkcji. Liczne parametry są dostarczane do funkcji BASH w drugiej połowie, a argument liczb całkowitych jest przekazywany w ostatnim rozdziale, aby wykonać podział.