Noah,

What does your build.pl script do? If it requires a controlling tty, that would 
explain why you have to run it in a terminal window. If it fails when terminal is 
already open, it's probably because you can't run multiple instances of
terminal. For example if you already have terminal running and launch it again, it 
doesn't start a new instance, it just brings the existing to the foreground. However 
this command will not "educate" the existing terminal that it should
run this command. You would need a new terminal window for this.

What about this approach? Create a new terminal, save it to a file, edit the file to 
execute the build.pl script. then open that terminal "session" from your cron job. 
That way if terminal is already running, a new session will open for
your build.pl. If not, terminal will launch and run the session you saved.


15 2 * * * open -a Terminal.app /Volumes/Builds/Development/build..pl.term

Where build.pl.term is a saved session set to execute build.pl, i.e. in the 
build.pl.term file you've set the execution string something like this:


<key>ExecutionString</key>

<string>/Volumes/Builds/Development/build.pl; exit 0</string>

Regards,
Rich

Noah Hoffman wrote:

> It turns out that many of the options I've been given only work when the Terminal 
>isn't already launched.  I ended up with the following crontab job
>
> 15  2  *  *  *  open -a Terminal.app /Volumes/Builds/Development/build.pl
>
> So my next and hopefully last question is, does anyone know why this fails when the 
>termianl is already open, even if it's not doing anything?  Is there a known 
>workaround for this?
>
> Thanks one last time!
> Noah

Reply via email to