如何在bash命令中的sqlplus中传递变量
这可能是问题:我的 bash 文件中有内联 sqlplus 调用,我想向它传递一个参数,
此代码就是我正在尝试的内容
c_id=`sqlplus -S $login/$password $id << EOF
set pagesize 0
set verify off
set head off
set feedback off
SELECT id from bdd.table where ID not in (select id from bdd.TMP_table) and id > &1 and ROWNUM <= 1000 order by id;
exit;
EOF`
,如何在 where 语句(&1)中使用 $id 参数?
Here is may problem : I have inline sqlplus call in my bash file and I would like to pass it a parameter
this code is what I'm trying
c_id=`sqlplus -S $login/$password $id << EOF
set pagesize 0
set verify off
set head off
set feedback off
SELECT id from bdd.table where ID not in (select id from bdd.TMP_table) and id > &1 and ROWNUM <= 1000 order by id;
exit;
EOF`
how can I use my $id parameter in my where statement (&1)?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
只需将
&1
更改为$id
即可。例如:Bash 将执行参数替换。在
sqlplus
运行之前,$id
将被替换为参数的实际值,即本例中的101
。Just change
&1
to$id
. For example:Bash will perform parameter substitution.
$id
will be substituted with the actual value of the parameter i.e.101
in this case, beforesqlplus
runs.