Bash脚本适用于使用sh -x
手动运行,但不适用于crontab。我在crontab中使用了正确的命令行。使用sh -x script.sh
运行时,它提供了正确的输出,但是当脚本放在crontab中时,它没有显示输出。请帮忙。该脚本已在下面提供:
. $HOME/.profile
DIR=$HOME/scripts
export DIR
HOST=`hostname`
export HOST
mail=`cat $DIR/sample.lst`
$ORACLE_HOME/bin/sqlplus -s "/ as system" << EOF
set feedback off;
set lines 1000;
set head off;
spool $DIR/sample.lst;
@$DIR/sample.sql;
spool off;
EOF
a=`ls -l $DIR/sample.lst | awk '{print $1}'`
if [ $a -ne 0 ]
then
sh $DIR/sample_1.sh
mailx -s "$HOST :$ORACLE_SID : The output is " $mail < $DIR/sample.txt
fi
答案 0 :(得分:1)
希望这会有所帮助。
chmod 755 [SCRIPT.sh]
答案 1 :(得分:1)
你可以在你的crontab中尝试这个吗?
让我们说你想每天早上0700HRS运行脚本。
00 07 * * * bash ; cd $HOME/scripts ; ./script.sh 1>out_script 2>&1
希望这就是你要找的东西。