我想将unix和sqlplus的输出复制到一个文件中

时间:2010-03-18 04:43:56

标签: sql oracle unix plsql sqlplus

我正在使用Solaris。我必须登录sql plus并运行一些查询,这会产生巨大的结果集。

我想将所有内容复制到文件中。在unix或sqlplus中是否有任何命令?

3 个答案:

答案 0 :(得分:7)

使用SPOOL命令:

SQL> SPOOL /opt/output

SQL> SELECT ...

SQL> SPOOL OFF

答案 1 :(得分:1)

设置Oracle环境

(有一些方法可以在命令行上指定用户名/密码 - 这不是最好的方式,尤其是当其他用户可以在服务器上“输入”并查看密码时)

sqlplus -s username/password <<-!!
set trimspool on trimout on pages 0 feedback off linesize 1000 echo off verify off
spool file.out
select sysdate from dual;
exit
!!

答案 2 :(得分:0)

如果您在命令行上,那么只需使用&gt;和2>将stdout和stderr分别重定向到日志文件

func > out.log