[ale] Bash: How to determine if called from cron?
Christopher Fowler
cfowler at outpostsentinel.com
Mon Jun 27 08:58:02 EDT 2005
If you did do FD!=`perl <<EOF
EOF
`
Then I think stdout would be a pipe that your script created. So that
might be a problem.
On Mon, 2005-06-27 at 08:39, Christopher Fowler wrote:
> Cron output is stored into a temp file in /tmp. You can stat STDOUT and
> see what filename is for that descriptor. If the filename contains the
> word 'cron' then you are inside cron.
>
> The only problem there is I know how to do this in C. Uoi can do it in
> perl but I have no clue how to in bash.
>
> You might be able to do something like this:
>
> LOCATION=`perl <<EOF
> ......
> EOF
> `
>
> Then check the value of that variable.
>
> Or maybe this will work in bash
>
> [cfowler at cfowler cfowler]$ FD1=`ls -l /proc/$$/fd/1 | cut -d '>' -f2`;
> [cfowler at cfowler cfowler]$ echo $FD1
> /dev/pts/1
>
> You'll want to check FD1 for the word cron.
>
>
> On Mon, 2005-06-27 at 00:17, Christopher Bergeron wrote:
> > Does anyone know of an easy way for my script to determine if it's being
> > run from cron or from a user shell?
> >
> > I have a feeling theres an easy way to do this, but I'm drawing a
> > complete blank right now. I'm looking at my Environment vars, but I'm
> > not sure what gets set by Cron when it runs a script.
> >
> > Any ideas are much appreciated...
> >
> > Kind regards,
> > CB
> >
> >
> > _______________________________________________
> > Ale mailing list
> > Ale at ale.org
> > http://www.ale.org/mailman/listinfo/ale
>
> _______________________________________________
> Ale mailing list
> Ale at ale.org
> http://www.ale.org/mailman/listinfo/ale
More information about the Ale
mailing list