【发布时间】:2019-08-05 02:56:40
【问题描述】:
我有一个像下面这样的脚本。我的目标是写入以当前日期和时间作为文件名和假脱机文件终止的日志文件:
#!/bin/bash
year=`date +%Y`
month=`date +%m`
day=`date +%d`
prefixe=$month$day$year
logfile="/home/oracle/logs/exec_proc_daily_20_"$prefixe.log
sqlplus / "as sysdba" <<EOF
spool on
spool $logfile
execute Proc_RFC_MAJ_MV_ITIN;
execute Proc_RFC_MAJ_MV_REFGEO;
commit;
quit
EOF
当我执行脚本时,spool $logfile 给出了一个错误。不创建日志。但是当我使用spool exec_proc_daily_2o.log 之类的东西时它会起作用。为什么变量$logfile没有被替换。
【问题讨论】:
-
将
sqlplus / "as sysdba"替换为cat并运行您的脚本表明变量替换正在按预期工作...