shell中重定向的一个问题
今天没事写了个shell脚本,但是让这个脚本定时执行时,重定向有点问题。脚本大概如下
- SQL code
DATE=`date -d yesterday +%Y%m%d` echo "the num:" sqlplus -S hello/hello@ora10g51 << EOF >>log_${DATE}.log select count(*) from ${DATE}_00; exit EOF
这个脚本手动执行时都将输出重定向到log_${DATE}.log这个文件中,但定时执行时就不行。
请问这个什么原因呢?
定时执行怎么就不行了呢? 在脚本最前面加一个cd dir, 然后到那个目录下去看有没有log_20100408.log的文件产生.
第一,cron里面最好用全路径,不然很难说东西写到哪去了
第二,需要在脚本里面设置oracle的环境变量,否则sqlplus不会执行的
第三,建议标准错误也输出到文件里面
mark
学习了
你是用crontab 定时吗?www.zhoin.com