Le funzioni bash non possono restituire valori come altri linguaggi di programmazione standard. Funzioni Bash Supporta l'istruzione di ritorno ma utilizza una sintassi diversa per leggere il valore di ritorno. Puoi ottenere il valore dalle funzioni bash in modi diversi. In questo tutorial, imparerai come puoi passare i dati di stringa dalla funzione bash al chiamante utilizzando diversi tipi di sintassi bash. Apri un editor di testo per testare i seguenti esempi di funzioni bash per capire come la stringa o i valori numerici possono essere restituiti dalle funzioni bash.
Esempio-1: usando la variabile globale
La funzione Bash può restituire un valore stringa utilizzando una variabile globale. Nell'esempio seguente, una variabile globale, "retval ' si usa. Un valore di stringa viene assegnato e stampato in questa variabile globale prima e dopo aver chiamato la funzione. Il valore della variabile globale verrà modificato dopo aver chiamato la funzione. Questo è un modo per restituire il valore della stringa da una funzione bash.
funzione f1 ()
retval = 'Mi piace la programmazione'
retval = 'odio la programmazione'
echo $ retval
F1
echo $ retval
Crea un file bash denominato func1.sh con il codice sopra ed eseguire lo script dal terminale. Qui, l'output 'Mi piace la programmazione'è assegnato e stampato dopo la chiamata della funzione.
Esempio-2: usando il comando funzione
È possibile ricevere il valore di ritorno di una funzione bash e archiviarla in una variabile al momento della chiamata. Nell'esempio seguente, una variabile locale, Retval viene utilizzato e il valore della variabile locale viene restituito dalla funzione F2 è assegnato in una variabile globale, getval che viene stampato in seguito.
funzione f2 ()
retval locale = 'usando la funzione bash'
Echo "$ retval"
getval = $ (f2)
Echo $ getval
Crea uno script bash chiamato func2.sh con il codice sopra ed esegui lo script.
Esempio-3: usando la variabile
Nell'esempio seguente, il valore di ritorno della funzione è impostato in base alla variabile dell'argomento della funzione. Qui, un valore viene passato alla funzione F3 usando una variabile argomento, getval1 al momento della chiamata. Dopo aver controllato l'istruzione condizionale, il valore di restituzione viene assegnato e stampato.
funzione f3 ()
Arg locale = $ 1
Se [[$ arg1 != ""]];
Poi
retval = "funzione bash con variabile"
altro
Echo "Nessun argomento"
fi
getval1 = "Bash Function"
F3 $ getval1
echo $ retval
getval2 = $ (F3)
echo $ getval2
Crea uno script bash chiamato func3.Sh con il codice sopra ed esegui lo script.
Esempio-4: Utilizzo dell'istruzione di ritorno
La maggior parte del linguaggio di programmazione standard utilizza l'istruzione di ritorno per restituire un valore dalla funzione. I valori delle funzioni vengono restituiti senza utilizzare alcuna istruzione di reso negli esempi sopra. Nell'esempio seguente, l'istruzione di ritorno viene utilizzata per restituire un valore numerico dalla funzione F4. Qui, $? viene utilizzato per leggere il valore 35 che viene restituito dalla funzione utilizzando ritorno dichiarazione.
funzione f4 ()
Echo 'Bash Return Dichiarazione'
restituzione 35
F4
Echo "Il valore di ritorno della funzione è $?"
Crea uno script bash chiamato func4.sh con il codice sopra ed esegui lo script.
È possibile utilizzare le funzioni bash in vari modi per restituire qualsiasi valore stringa o numerico dopo aver chiamato la funzione. Per ulteriori informazioni, guarda il video!