システム変数cmdsepは、1行中に複数のSQL*Plusコマンドを使用できるかどうかを指定するシステム変数です。
set cmds[ep] off
と設定すると、1行中には一つのSQL*Plusコマンドしか入力できません。
でも以下のように
set cmds[ep] on
と設定すると、SQL*Plusコマンドを1行中に複数入力することができます。
この時、SQL*Plusコマンドはセミコロン(;)で区切ります。
以下は例ですが、SQLバッファを表示してから実行しています。それを一行で書いているのでセミコロンで区切っています。
SQL> list;/
デフォルトでは、セパレータはセミコロンですが、英数字以外の文字なら指定することができます。
set cmdsep 英数字以外の1文字
と設定します。するとセパレータは指定した1文字に変更されます。
たとえば
set cmds[ep] :
というように設定します。
但し、
spool c:\a.txt;/;spool off というようにすると、なぜか出力できませんでした。