Returning values from functions
Whenever we have statements that are printed on the screen within the function, we can see their result. However, many times we will want the function to populate a variable within the script and not display anything. In this case, we use return
in the function. This is especially important when we are gaining input from users. We may prefer the case to translate the input to a known case to make the condition testing easier. Embedding the code in a function allows it to be used many times within a script. The following code shows how we can achieve this by creating the to_lower
function:
function to_lower () { input="$1" output=$(tr [A-Z] [a-z] <<<"$input") return $output }
Stepping through the code we can begin to understand the operation of this function:
input="$1"
: This is more for ease than anything else; we assign the first input parameter to a named variable input.output=$(tr [A-Z] [a-z] <<< "$input")
: This is the main engine...