Set a parent shell's variable from a subshell
问题 How do I set a variable in the parent shell, from a subshell? a=3 (a=4) echo $a 回答1: The whole point of a subshell is that it doesn't affect the calling session. In bash a subshell is a child process, other shells differ but even then a variable setting in a subshell does not affect the caller. By definition. Do you need a subshell? If you just need a group then use braces: a=3 { a=4;} echo $a gives 4 (be careful of the spaces in that one). Alternatively, write the variable value to stdout