我在运行下面的命令之前假脱机了一个文件并获得了这样的输出,
我设置了标题,反馈关闭
设置HEADING OFF SET FEEDBACK OFF SPOOL D:\ TEST.TXT SELECT SYSDATE FROM DUAL; SPOOL OFF
TEST.TXT中的OUTPUT:
SQL> SELECT SYSDATE FROM DUAL;
20-JAN-09
SQL> SPOOL OFF
如何删除两个SQL>线。我只想要输出。
提前致谢。
答案 0 :(得分:15)
您需要的命令是:
SET ECHO OFF
但是,它仅适用于从脚本运行的代码,而不适用于以交互方式输入的命令。您可以创建这样的脚本文件(例如,称为 test.sql ):
SET HEADING OFF FEEDBACK OFF ECHO OFF PAGESIZE 0
SPOOL D:\TEST.TXT
SELECT SYSDATE FROM DUAL;
SPOOL OFF
然后在SQL Plus中运行它:
SQL> @test
我在SET命令中添加了PAGESIZE 0,以删除输出文件中日期之前的空行。
答案 1 :(得分:4)
使用它:
#!/bin/ksh
CONNECT_STRING=dbapp/dbapp@inst
SQLPLUS_SETTINGS="SET PAGESIZE 1000 LINESIZE 500 ECHO OFF TRIMS ON TAB OFF FEEDBACK OFF HEADING OFF"
SQL_RESULT=`sqlplus -s ${CONNECT_STRING} << EOF
${SQLPLUS_SETTINGS}
select sysdate from dual;
exit;
EOF`
echo $SQL_RESULT >output_file