exit
という単語をパイプすることができます SQL*Plusコマンドラインに追加します。たとえば、demo.sql
の場合 これで構成されます:
prompt This is my demo script
次に、次のように呼び出すことができます:
echo exit | sqlplus william/w @demo.sql
出力:
Y:\SQL>echo exit | sqlplus william/w @demo.sql
SQL*Plus: Release 12.2.0.1.0 Production on Sun Jan 13 10:47:13 2019
Copyright (c) 1982, 2016, Oracle. All rights reserved.
Last Successful login time: Sun Jan 13 2019 10:46:03 +00:00
Connected to:
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production
This is my demo script
SQL> Disconnected from Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production
Y:\SQL>
または、-s
を使用します バナーなどを抑制する(サイレント)オプション:
Y:\SQL>echo exit | sqlplus -s william/w @demo.sql
This is my demo script
Y:\SQL>
Windows10でSQL*Plus12.2を使用してテスト済み。
(https://serverfault.com/q/87035/352734 から -WindowsとLinuxの両方で機能することがわかりました。)
また、ユーザー名とパスワードの処理を回避するためのオプションを確認することもできます。ここ: https://dba.stackexchange.com/a/109170/103604