No , The script contains many anonymous blocks so I want to execute few anonymous blocks based on a condition set by the previous anonymous blocks in the same script

So I coded the anonynmous blocks that has to be executed based on the condition at the end of the script so that I can exit the script if the condition is true without executing the anonymous blocks at the end.

No , The script contains many anonymous blocks so I want to execute few anonymous blocks based on a condition set by the previous anonymous blocks in the same script

So I coded the anonynmous blocks that has to be executed based on the condition at the end of the script so that I can exit the script if the condition is true without executing the anonymous blocks at the end.

Hope so the requirement is clear.

I'm afraid I don't understand that at all.

"No" to what? You use SET TERM OFF to suppress output.

From your description it sounds like your script is like this:

<<Block1>>
BEGIN
various commands;
END;
/

<<Block2>>
BEGIN
various commands;
END;
/

<<Block3>>
BEGIN
various commands;
END;
/

Now depending on the outcome of something in Block1 or Block2, you want it to exit the script silently (no output, errors etc) without executing Block3?

Or, would you want to be able to skip Block2 and continue with Block3?

Or, are the blocks in separate .SQL files that are called conditionally from a shell script?