On 2007-12-16 19:10, David Goodnature <[EMAIL PROTECTED]> wrote: > I have a perl script that I can execute from the command line as root. > It runs fine. When I try to automate it using the root crontab, the > script fails. > > The lines from my script that are causing the problem are: > > my $scomd = "/usr/local/bin/ps2pdf -dPDFSETTINGS=/prepress > -dProcessColorModel=/DeviceGray -dAutoRotatePages=/PageByPage > -dDownsampleMonoImages=true -dMonoImageDownsampleType=/Average > -dMonoImageDownsampleThreshold=1.5 -dMonoImageResolution=600 > ".$inpath.$cur_ps_files[0]." ".$outpath.$pdffilename; > > ### create the new .pdf file from the .ps file > system($scomd) == 0 or return "system $scomd failed: $?"; > > The cron message to mail/root ends with: > > exec: ps2pdf12: not found > > I am assuming that cron cannot find a path or a config file for > ghostscript, but I don't have any idea how to fix this problem.
Yes. That's what is happenning. The default PATH of cron jobs doesn't include `/usr/local/bin', but you have lots of options: 1) Add it to the crontab file PATH="/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin" crontab entries here 2) Modify the default path in your Perl script: $ENV{PATH} = '/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin'; my $scomd = join(' ', ('/usr/local/bin/ps2pdf', '-dPDFSETTINGS=/prepress', '-dProcessColorModel=/DeviceGray', '-dAutoRotatePages=/PageByPage', '-dDownsampleMonoImages=true', '-dMonoImageDownsampleType=/Average', '-dMonoImageDownsampleThreshold=1.5', '-dMonoImageResolution=600' $inpath.$cur_ps_files[0], $outpath.$pdffilename)); system($scomd) == 0 or return "system $scomd failed: $?"; _______________________________________________ freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to "[EMAIL PROTECTED]"