When running a script that contains a lot of feedback (eg dbms_output.put_line) to the screen, it can take a while to send all the feedback to the screen.
To suppress the output to the screen use:
set termout off
This command only seems to work when placed inside a script.
If you suppress the feedback to the screen, it might be useful to spool it to a file to keep a log of the output.