find command in script getting access denied in my crontab but works when I run it manually

Larry Hall (Cygwin)
Tue Sep 18 02:39:00 GMT 2007

On 09/17/2007, kuliksco wrote:
> Anyone have any idea why the find isn't working properly when in the 
> crontab? I dont actually think it's a permission denied issue but something 
> with the parsing possible (since I made sure i have full access to all the 
> files and the script works from the command line). maybe it's something 
> with the environment variables. thanks in advance for any ideas.

The problem is that you're assuming that the environment you have when you
run interactively is the same environment you have when you run the script
through 'cron'.  That is not true.  If you require a particular environment
for a script to run, you need to include those settings in your crontab.
This is standard operating procedure for 'cron'.  It is not Cygwin specific.
See cron/crontab documentation for more information.

Actually, both your scripts suffer from the problem I mentioned above.  You
just have better luck with the first because:

   1. You apparently do have Cygwin's bin directory in your system-wide
      Windows path.
   2. There is no like-named Windows utility.

(2) does not hold true for 'find'.  You should either define the same
path as you use for your user environment in your crontab or fully
qualify the path to the utilities you want (i.e. '/bin/find' and '/bin/ln').
I'd also highly recommend using POSIX-style paths (i.e. '/cygdrive/f') over
DOS-like paths (i.e. 'f:/').  You'll have less troubles in general.

Larry Hall                    
RFK Partners, Inc.                      (508) 893-9779 - RFK Office
216 Dalton Rd.                          (508) 893-9889 - FAX
Holliston, MA 01746


A: Yes.
 > Q: Are you sure?
 >> A: Because it reverses the logical flow of conversation.
 >>> Q: Why is top posting annoying in email?

Unsubscribe info:
Problem reports:

More information about the Cygwin mailing list