Search code examples
linuxbashechoreturn-value

return values from bash script


I want to create a Bash file that returns a value. Meaning, in script script_a.bash I have a certain calculation, and script script_b.bash will call it.

script_a.bash:

return $1*5

script_b.bash:

a_value=./script_a.bash 3

when a_value will be 15.

I read a little bit about that, and saw that there's no "return" in bash, but something like this can be done in functions using "echo". I don't want to use functions, I need a generic script to use in multiple places.

Is it possible to return a value from a different script?


Solution

  • Use command substitution to capture the output of echo, and use arithmetic expression to count the result:

    script_a.bash:

    echo $(( $1 * 5 ))
    

    script_b.bash

    a_value=$( script_a.bash 3 )