    Execute commands as long as a test does not succeed.
    
    Expand and execute COMMANDS-2 as long as the final command in COMMANDS has
    an exit status which is not zero.
    
    Exit Status:
    Returns the status of the last command executed.
