Bird
Raised Fist0
Bash Scriptingscripting~5 mins

Return values (return and echo) in Bash Scripting - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What does the return command do inside a bash function?
It stops the function and sends a numeric exit status (0-255) back to the caller. It does NOT send text output.
Click to reveal answer
beginner
How can you send text output from a bash function?
Use echo inside the function to print text. The caller can capture this output using command substitution.
Click to reveal answer
beginner
What is the difference between return and echo in bash functions?
return sends a numeric status code to indicate success or failure.
echo sends text output that can be captured or displayed.
Click to reveal answer
beginner
Can return send strings or complex data in bash?
No. return only sends a number (0-255). To send strings, use echo and capture the output.
Click to reveal answer
beginner
How do you capture the output of a bash function that uses echo?
Use command substitution like result=$(my_function). The variable result will hold the echoed text.
Click to reveal answer
What does return 1 inside a bash function mean?
AThe function prints '1' to the screen
BThe function ends and sends a failure status 1
CThe function sends the string '1' as output
DThe function continues running
How do you get text output from a bash function?
AUse <code>echo</code> inside the function
BUse <code>print</code> command
CUse <code>return</code> with the text
DUse <code>exit</code> with text
What is the valid range of numbers you can use with return in bash?
AAny integer
BOnly 0 or 1
C1 to 100
D0 to 255
How do you store the text output of a bash function into a variable?
Avar=$(my_function)
Bvar=return my_function
Cvar=echo my_function
Dvar=my_function
If a bash function uses return 5, what will $? be after calling it?
AThe text '5'
B0
C5
D1
Explain how return and echo differ in bash functions and when to use each.
Think about what you want to send back: a number or text.
You got /4 concepts.
    Describe how to capture the output of a bash function that prints text using echo.
    Remember how you capture command output in bash.
    You got /3 concepts.

      Practice

      (1/5)
      1. In bash scripting, what does the return command inside a function do?
      easy
      A. It stops the entire script immediately.
      B. It sends a numeric status code back to the caller.
      C. It prints text output to the terminal.
      D. It saves the function output to a file.

      Solution

      1. Step 1: Understand the purpose of return in bash functions

        The return command sends a numeric exit status (0-255) back to the caller, indicating success or failure.
      2. Step 2: Differentiate from echo

        Unlike echo, which prints text output, return only sends a number status, not text.
      3. Final Answer:

        It sends a numeric status code back to the caller. -> Option B
      4. Quick Check:

        return = numeric status [OK]
      Hint: Remember: return sends number status, echo prints text [OK]
      Common Mistakes:
      • Thinking return prints output like echo
      • Using return to output strings
      • Confusing return with exit
      2. Which of the following is the correct syntax to return a status code 5 from a bash function named check?
      easy
      A. exit 5
      B. echo 5
      C. return(status=5)
      D. return 5

      Solution

      1. Step 1: Recall bash function return syntax

        To return a status code from a function, use return followed by the number, e.g., return 5.
      2. Step 2: Identify incorrect options

        echo 5 prints text, return(status=5) is invalid syntax, and exit 5 exits the whole script.
      3. Final Answer:

        return 5 -> Option D
      4. Quick Check:

        Use return number syntax [OK]
      Hint: Use 'return' followed by number to send status [OK]
      Common Mistakes:
      • Using echo instead of return for status
      • Trying to use parentheses in return
      • Using exit inside function to return status
      3. What will be the output of this script?
      myfunc() {
        echo "Hello"
        return 3
      }
      myfunc
      echo $? 
      medium
      A. 3\nHello
      B. Hello\n0
      C. Hello\n3
      D. 3\n3

      Solution

      1. Step 1: Analyze function output

        The function prints "Hello" using echo, so "Hello" appears first.
      2. Step 2: Check return status and echo it

        The function returns 3, so $? after calling it is 3, which is printed next.
      3. Final Answer:

        Hello\n3 -> Option C
      4. Quick Check:

        echo prints text, return sets status [OK]
      Hint: echo prints text first, $? shows return code after function [OK]
      Common Mistakes:
      • Confusing echo output with return value
      • Expecting return value to print automatically
      • Ignoring that $? holds last return status
      4. Identify the error in this bash function:
      myfunc() {
        return "Success"
      }
      myfunc
      echo $?
      medium
      A. return expects a number, not a string
      B. echo cannot print return values
      C. Function missing parentheses
      D. return must be last command in function

      Solution

      1. Step 1: Understand return command rules

        In bash, return must be followed by a numeric status (0-255), not a string.
      2. Step 2: Identify the error in the code

        The code tries to return "Success" (a string), which causes an error.
      3. Final Answer:

        return expects a number, not a string -> Option A
      4. Quick Check:

        return only accepts numbers [OK]
      Hint: return only accepts numbers, not text [OK]
      Common Mistakes:
      • Trying to return strings with return
      • Confusing echo and return usage
      • Assuming return prints output
      5. How can you capture the text output of a bash function greet that uses echo inside, and store it in a variable msg?
      hard
      A. msg=$(greet)
      B. msg=return greet
      C. msg=`return greet`
      D. msg=echo greet

      Solution

      1. Step 1: Understand capturing function output

        To capture text output from a function that uses echo, use command substitution: $(function_name).
      2. Step 2: Identify correct syntax

        msg=$(greet) runs greet and stores its echo output in msg. Other options misuse return or echo.
      3. Final Answer:

        msg=$(greet) -> Option A
      4. Quick Check:

        Use $(function) to capture echo output [OK]
      Hint: Use $(function) to capture echo output in variable [OK]
      Common Mistakes:
      • Using return instead of command substitution
      • Assigning echo command directly to variable
      • Using backticks incorrectly with return
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard