An
exit command upon terminating a script can also return a value to the parent script.
Usually
SUCCESS is indicated by zero and
FAILURE is indicated by non-zero exit codes.
As far I know an exit status should be an integer in 0 - 255 range. Out of which there are few exit codes with
special meanings.
By the way we can program a script to return certain exit codes (in your case 1,2,3,6..) for different scenarios which will be available to parent and the parent can be programmed to handle each scenarios differently.
So there will be different set of actions taken when script returns 1,2,3,6 etc.