shell中转义oracle sql中的“$”符号

原码如下

su - oracle -c "sqlplus -s test/test_2024 > /tmp/rman_size.log<<EOF
SET pagesize 0
select to_char(RMAN_SIZE) from (select to_char(start_time,'yyyy-mm-dd') start_time,to_char(start_time,'day') day,device_type,sum(OUTPUT_BYTES) RMAN_SIZE
from v$backup_set_details where INCREMENTAL_LEVEL=0 group by to_char(start_time, 'yyyy-mm-dd'),INCREMENTAL_LEVEL,BACKUP_TYPE,device_type,
to_char(start_time,'day') order by start_time desc ) c where rownum=1;
EOF"

执行报错

[root@centos610 work]# ./a.sh 
[root@centos610 work]# cat /tmp/rman_size.log 
from v where INCREMENTAL_LEVEL=0 group by to_char(start_time, 'yyyy-mm-dd'),INCREMENTAL_LEVEL,BACKUP_TYPE,device_type,
     *
ERROR at line 2:
ORA-04044: procedure, function, package, or type is not allowed here

转义一次sql脚本中的$符号

su - or
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

楚枫默寒

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值