Bash How to Return String from Function
You can return string from function in many ways, but you can not use the command “return” to return string:
return "Hello..."
Return statement can return only an integer value.
First option uses a passing argument to the function. To assign to the first argument use in function “$1”:
eval "$1='Hello...'"
Then call the function “my_function”:
my_var='' my_function my_var echo $my_var
Output: Hello…
Other way is to use a global variable which you modify within the function.
You can also use command echo to write string value and use command substitution to get it:
hello() { var='Hello friend.' echo "$var" } greeting=$(hello) echo $greeting