Sådan returneres en streng fra basfunktioner

How Return String From Bash Functions



Bash -funktioner kan ikke returnere værdier som andre standard programmeringssprog. Bash -funktioner understøtter returerklæring, men den bruger forskellig syntaks til at læse returværdien. Du kan få værdien fra bash -funktioner på forskellige måder. I denne vejledning lærer du, hvordan du kan overføre strengdata fra bash -funktion til den, der ringer op ved hjælp af forskellige typer bash -syntakser. Åbn et tekstredigeringsprogram for at teste følgende eksempler på bash -funktioner for at forstå, hvordan streng- eller numeriske værdier kan returneres fra bash -funktioner.

Eksempel-1: Brug af global variabel

Bash -funktion kan returnere en strengværdi ved hjælp af en global variabel. I det følgende eksempel er en global variabel, ' tilbagevenden ’ anvendes. En strengværdi tildeles og udskrives i denne globale variabel før og efter opkald til funktionen. Værdien af ​​den globale variabel ændres, når funktionen kaldes. Dette er en måde at returnere strengværdi fra en bash -funktion.







fungereF1()
{
tilbagefald='Jeg kan godt lide at programmere'
}

tilbagefald='Jeg hader at programmere'
smed ud $ retval
F1
smed ud $ retval

Opret en bash -fil med navnet func1.sh med ovenstående kode, og kør scriptet fra terminalen. Her er output ' Jeg kan godt lide at programmere ’Tildeles og udskrives efter funktionsopkald.





Eksempel-2: Brug af funktionskommando

Du kan modtage returværdien for en bash -funktion og gemme den i en variabel på tidspunktet for opkaldet. I det følgende eksempel er en lokal variabel, tilbagefald bruges, og værdien af ​​den lokale variabel er return af funktionen F2 er tildelt i en global variabel, getval som udskrives senere.





fungereF2()
{
lokal tilbagefald='Brug af BASH -funktion'
smed ud '$ retval'
}

getval= $(F2)
smed ud $ getval

Opret et bash -script med navnet func2.sh med ovenstående kode, og kør scriptet.




Eksempel-3: Brug af variabel

I det følgende eksempel indstilles funktionens returværdi baseret på funktionens argumentvariabel. Her overføres en værdi til funktionen F3 ved hjælp af en argumentvariabel, getval1 på tidspunktet for funktionskald. Efter kontrol af betinget erklæring tildeles og returneres returværdien.

fungereF3()
{
lokal arg1=$ 1

hvis [[ $ arg1 !='' ]];
derefter
tilbagefald='BASH -funktion med variabel'
andet
smed ud 'Intet argument'
være
}

getval1='Bash -funktion'
F3$ getval1
smed ud $ retval
getval2= $(F3)
smed ud $ getval2

Opret et bash -script ved navn func3.sh med ovenstående kode, og kør scriptet.

Eksempel-4: Brug af returerklæring

De fleste af standard programmeringssprog bruger returnering til at returnere en værdi fra funktionen. Funktionsværdier returneres uden brug af retursætning i ovenstående eksempler. I det følgende eksempel bruges returnering til at returnere en numerisk værdi fra funktionen F4 . Her, $? bruges til at aflæse værdien 35, som returneres af funktionen ved hjælp af Vend tilbage udmelding.

fungereF4() {
smed ud 'Bash Return Statement'
Vend tilbage 35
}

F4
smed ud 'Funktionens returværdi er $?'

Opret et bash -script med navnet func4.sh med ovenstående kode, og kør scriptet.

Du kan bruge bash -funktioner på forskellige måder til at returnere enhver streng eller numerisk værdi efter at have kaldt funktionen. For mere information, se venligst videoen !