Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 24 Nov 2002 13:15:38 -0800
From:      "Paul A. Scott" <pscott@skycoast.us>
To:        Len Conrad <LConrad@go2france.com>, <freebsd-questions@freebsd.org>
Subject:   Re: .sh interactive ok, from crontab, not
Message-ID:  <BA06817A.14AF9%pscott@skycoast.us>
In-Reply-To: <5.1.1.6.2.20021124194251.02c390c0@mail.go2france.com>

next in thread | previous in thread | raw e-mail | index | archive | help
> From: Len Conrad <LConrad@Go2France.com>
  <snip>
> This snippet works fine...
> 
> if ( ps aux | grep -i "^root.*master" ) > /dev/null
> then
> echo "then: exit code equal 0"
> exit 0
> else
> <try to run the daemon>
> 
> ... when run from the command line, the echo text displays. But, when run
> from crontab every 10 minutes, the if fails, and the else clause runs.
> 
> I've tried every syntax I know, but still can't get this logic to work.

It works for me, and I suspect that it's working for you, too. However, you
may not see the results expected if you are piping the cron output through
sendmail, because the 'echo "then: ...' could be interpreted as a mail
header. Make certain that you output a blank line, eg., echo "", *before*
any lines that contain 'some-word:' so that sendmail stops looking for
headers.

Just a guess.

Also, make sure that you're running the expected shell. Check the SHELL=
line in crontab, or force the script to run via the expected shell by
running 'sh script' instead of just 'script', or tell the script what shell
to run by adding something like the following on the first line:

#!/bin/sh

Although this isn't related to your problem , you might find it simpler to
use the -q option on grep instead of redirecting the output. For example,

if ( ps -aux | grep -q -i "^root.*master" ); then

instead of,

if ( ps aux | grep -i "^root.*master" ) > /dev/null; then

Paul

-- 
Paul A. Scott
mailto:pscott@skycoast.us
http://skycoast.us/pscott/


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?BA06817A.14AF9%pscott>