ABOUT return
Causes a function to stop executing and return the value specified by n to its caller. If n is omitted, the return status is that of the last command executed in the function body.
TYPICAL COMMAND LINE EXPOSURE
[bash]
$cat learn
function e() {
echo hello
echo "10"
}
e
value=e
#echo $value
$bash ./learn
hello
10
$
[/bash]
[bash]
$cat learn
function e() {
echo hello
echo "10"
}
value=e
echo $value
$bash ./learn
e
$
[/bash]
[bash]
$cat learn
function e() {
echo hello
echo "10"
}
value=$(e)
echo $value
$bash ./learn
hello 10
$
[/bash]
[bash]
$cat learn
function e() {
echo hello
echo "10"
}
value=$(e)
#echo $value
$bash ./learn
$
[/bash]
[bash]
$cat learn
function e() {
echo hello
echo "10"
}
e
value=$(e)
#echo $value
$bash ./learn
hello
10
$
[/bash]
[bash]
$cat learn
function e() {
echo hello
echo 10
}
e
value=$(e)
#echo $value
$bash ./learn
hello
10
$
[/bash]
[bash]
$cat learn
function e() {
echo hello
return 10
}
e
value=$(e)
echo $value
$bash ./learn
hello
hello
$
[/bash]
[bash]
$cat learn
function e() {
echo hello
return 10
}
e
value=$(e)
echo $value
echo $?
$bash ./learn
hello
hello
0
$
[/bash]
[bash]
$cat learn
function e() {
echo hello
return 10
}
e
echo $?
$bash ./learn
hello
10
$
[/bash]
LINKS
https://ryanstutorials.net/bash-scripting-tutorial/bash-functions.php
https://stackoverflow.com/questions/4419952/difference-between-return-and-exit-in-bash-functions