Ako vrátiť reťazec z basových funkcií

How Return String From Bash Functions



Bash Functions nemôže vracať hodnoty ako ostatné štandardné programovacie jazyky. Bash funkcie podporujú príkaz return, ale na čítanie návratovej hodnoty používa inú syntax. Hodnotu z funkcií bash môžete získať rôznymi spôsobmi. V tomto tutoriále sa naučíte, ako môžete volajúcemu odovzdať reťazcové údaje z funkcie bash pomocou rôznych typov syntaxí bash. Otvorte textový editor a otestujte nasledujúce príklady funkcií bash, aby ste pochopili, ako je možné z funkcií bashu vrátiť reťazcové alebo číselné hodnoty.

Príklad 1: Použitie globálnej premennej

Bash funkcia môže vrátiť hodnotu reťazca pomocou globálnej premennej. V nasledujúcom prípade globálna premenná „ odplata ‘ sa používa. V tejto globálnej premennej je priradená a vytlačená hodnota reťazca pred a po volaní funkcie. Po vyvolaní funkcie sa zmení hodnota globálnej premennej. Toto je spôsob, ako vrátiť hodnotu reťazca z funkcie bash.







funkciuF1()
{
odveta=„Rád programujem“
}

odveta='Nenávidím programovanie'
zahodil $ retval
F1
zahodil $ retval

Vytvorte bash súbor s názvom func1.sh s vyššie uvedeným kódom a spustite skript z terminálu. Tu je výstup „ Rád programujem ‘Je priradené a vytlačené po volaní funkcie.





Príklad 2: Použitie príkazu funkcie

Môžete získať návratovú hodnotu bash funkcie a uložiť ju do premennej v čase volania. V nasledujúcom prípade lokálna premenná, odveta sa používa a hodnota lokálnej premennej je funkciou vrátená F2 je priradený v globálnej premennej, getval ktorý sa vytlačí neskôr.





funkciuF2()
{
miestny odveta=„Používanie funkcie BASH“
zahodil '$ retval'
}

getval= $(F2)
zahodil $ getval

Vytvorte bash skript s názvom func2.sh s vyššie uvedeným kódom a spustite skript.




Príklad 3: Použitie premennej

V nasledujúcom príklade je návratová hodnota funkcie nastavená na základe premennej argumentu funkcie. Tu je hodnota odovzdaná funkcii F3 pomocou argumentovej premennej getval1 v čase volania funkcie. Po kontrole podmieneného príkazu sa vráti a vytlačí návratová hodnota.

funkciuF3()
{
miestny arg1=1 dolár

keby [[ 1 dolár arg !='' ]];
potom
odveta=„Funkcia BASH s premennou“
inak
zahodil „Žiadny argument“
byť
}

getval1='Bash funkcia'
F3$ getval1
zahodil $ retval
getval2= $(F3)
zahodil $ getval2

Vytvorte skript bash s názvom func3.sh s vyššie uvedeným kódom a spustite skript.

Príklad 4: Použitie vyhlásenia o návrate

Väčšina štandardného programovacieho jazyka používa príkaz return na vrátenie hodnoty z funkcie. Funkčné hodnoty sú vrátené bez použitia akéhokoľvek návratového príkazu vo vyššie uvedených príkladoch. V nasledujúcom príklade sa na vrátenie číselnej hodnoty z funkcie používa príkaz return F4 . Tu, $? sa používa na čítanie hodnoty 35, ktorú funkcia vracia pomocou vrátiť sa vyhlásenie.

funkciuF4() {
zahodil „Vyhlásenie o vrátení hotovosti“
vrátiť sa 35
}

F4
zahodil 'Návratová hodnota funkcie je $?'

Vytvorte bash skript s názvom func4.sh s vyššie uvedeným kódom a spustite skript.

Funkcie bash môžete použiť rôznymi spôsobmi na vrátenie ľubovoľného reťazca alebo číselnej hodnoty po zavolaní funkcie. Pre viac informácií sledujte video !