Search notes:

SQL*Plus: START

start script.sql runs (executes) the SQL statements recorded in script.sql.
SQL*Plus searches for the indicated file in the current directory first and then in the directories that are pointed at by $SQLPATH.

Using @ when starting SQL*Plus

The @ can also be used on the command line when SQL*Plus is invoked to start a script file:
sqlplus rene/xxxx@db  @do-stuff.sql

test depth limit

prompt Test depht limit
start test_depth_limit.sql
Github repository Oracle-Patterns, path: /SQLPlus/start/test_depth_limit.sql

Question mark

The question mark is replaced with the value of ORACLE_HOME which makes installing scripts (notably those found under $ORACLE_HOME/rdmbs/amdin) a bit easier:
rene@ora19> @?/rdbms/admin/utlsqmpl

Enter value for xyz

Sometimes, when executing an SQL script in SQL*Plus, the message Enter value for xyz show up:
SQL> @update-customers.sql
Enter value for xyz:
The cause for this message is (probably) that the script contains substitution variables and SQL*Plus prompts for the value that should be assigned to such a variable.
In order to turn off this message, use
set define off

Prevent displaying of commands found and executed in an SQL script file

With echo being set to on, SQL*Plus will display (replicate) each command found within the SQL script before executing it.
I find this behavior in most cases quite distractful, therefor, I like to set it off:
SQL> set echo off
SQL> @script.sql

See also

With 19c, SQL*Plus still does not allow to read lines that are longer than 4999 characters!
The echo setting
When executing scripts, one might consider to set feedback off and/or set termout off to suppress echoing text to the terminal in order to reduce output.
SQL*Plus/Powershell: Color error messages when running a script
A user defined SQLcl command handler to print the name of executed scripts in green.
SQL*Plus

Index