这可能是一个非常愚蠢的问题,但在这里......
这是我在Unix命令行中使用sqlplus获取一些数据的语法:
echo pwd|sqlplus -S -L user@db @mysqlfile >> otherfile
它工作正常,但'otherfile'以“输入密码:”行开头,这非常令人讨厌,并且它为解析结果提供了额外的代码。所以问题是:
如何摆脱“输入密码:”行?我在那里做错了吗?
感谢。
答案 0 :(得分:2)
可以将connect命令与要执行的脚本一起传递给sqlplus
。您还必须使用/nolog
和-S
(无声)选项:
[oracle@localhost]$ cat mysqlfile.sql
select * from dual;
[oracle@localhost]$ (echo connect username/secretpassword ; echo @mysqlfile) | sqlplus -S /nolog >> out
[oracle@localhost]$ cat out
D
-
X
[oracle@localhost]$
编辑: 使用您的参数:
(echo connect user/pwd ; echo @mysqlfile) | sqlplus -S /nolog >> otherfile