Actually the dot is only needed to terminate PL/SQL blocks (because PL/SQL can contain blank lines and semicolons) - apologies for including it in my example due to sheer force of habit. For plain SQL (with sqlblanklines off) you don't need one.
SQL> show sqlblanklines
SQL> ho type test.sql
col message format a7
select 'Hello' as message from dual
1* select 'Hello' as message from dual
1 row selected.