我是刚开始编写shell脚本。我想从connect
到database
并执行一个简单的查询。这是我正在尝试的
. /home/oracle/db_env.sh
sqlplus system/*****
select * from dual;
但是当我执行此脚本时,我什么也没得到。当我退出sqlplus
时
我得到
bash: db.sh: line 3: syntax error near unexpected token `from'
bash: db.sh: line 3: `select * from dual;'
请指导我如何做。
答案 0 :(得分:0)
问题在于,一旦您的“ sqlplus system / ****”执行完毕,它将进入sqlplus命令提示符,下一行“ select * from dual;”。不会由bash传递到该sqplus应用程序提示符,而是由bash直接执行。
您可能需要以下建议:
https://stackoverflow.com/a/10278103/2002557
具体如下:
/home/oracle/db_env.sh:
sqlplus -s <<EOF system/*****@<host name>/<db name>
select * from dual;
select something from somwhere;
# etc.
EOF