Script Substitution is the more apt term for Command Substitution , since entire scripts , not just individual commands , can be contained in brackets. The result of the script is the result of the final command . A new stack frame is not created , so using return or break or the like will cause the caller to return , etc.