Encontré una solución mejor sin la necesidad de declarar/comenzar/finalizar bloques de código o declaraciones de consulta.
Se puede obtener un nombre de archivo de cola de muestra con la fecha y la hora:
sql> column dt new_value _dt
sql> select to_char(sysdate,'ddMONyyyy_hh24mi') dt from dual;
sql> spool &_dt
Mi nombre de archivo:27JUN2011_1727.lst
Incluso puede especificar la extensión del archivo si lo necesita (por ejemplo, .txt). Solo crea otra variable.
fuente:http://oracle.ittoolbox.com/groups/technical-funcional/oracle-apps-l/variable-file-name-with-spool-1508529