Re: Why following ksh script not works in crontab?
Posted in 1998
My bitter expereince would suggest your informix enviromnets are not being
set. Your session will have $INFORMIXDIR, $INFORMIXSERVER etc, and will
pass these onto your svript. However, unless you set them explicitly at the
begining of the script they will not be set when the script is cronned.
Neil Truby
Londis Holdings
London, UK
Ruiming Chen wrote in message <3609D23A.555E7318@erols.com>...
>The following ksh script works well in command line.
>But not work in crontab, why?
>
>-----------------------------------------------------------------------
>#!/bin/ksh
>
># Informix back up logical log and will create a file logical.log
>
>ontape -a << EOF>^M
>y^M
>EOF
>
># where ^M is return input in vi by type ctrl-V and Enter
>sleep 3
>
>hour=`date +%H`
>
>if [[ $hour -ge 9 && $hour -lt 12 ]]
>then cp logical.log logical_tape1.log
>else cp logical.log logical_tape2.log
>fi
>cat /dev/null > logical.log
>-------------------------------------------------------------------
>The above script runs perfectly if on command line. But when I schedual
>in the crontab, I always got 0 (zero) size of logical_tape1/2.log. It
>seems
>to me the script does the "cp" command before the "ontape -a" processing
>
>finish. I even put a "sleep" between them. Why is that?
>
>Do I have to run the script in background in crontab? like
>
>0 10,13 * * * mybackup_script &
>
>Currently I don't put in background "&"
>
>BTW, My OS is HP-UX 10.20, database is Informix Dynamic Server 7.3.
>For those who has OS Solaris 2.5/6.x, do you have this problem?
>To all, do you have solution for me? Thank you very much in advance!
>
>
>--
>RC Square Team.
>
>