[ Home  |  FAQ-Related Q&As  |  General Q&As  |  Answered Questions ]


    Search the Q&A Archives


Hello everyone. I need some help with environmental...

<< Back to: Csh Programming Considered Harmful

Question by Steve
Submitted on 9/26/2003
Related FAQ: Csh Programming Considered Harmful
Rating: Rate this question: Vote
Hello everyone.

I need some help with environmental variables for running a Perl script, which contains many system commands.

Usually, when you run scripts on the command line, they inherit the variables you have set up.  But with a cron job, they don't get inherited.  As a result of this, I get many errors from simple commands such as "cp" and "rm".

Anyone who could help me with setting up the /usr/bin/ksh variables, inside my Perl script?

Thanks.

Steve


Answer by jtobey
Submitted on 10/2/2003
Rating:  Rate this answer: Vote
The best solution is to write a wrapper script.  (It may not be a GOOD solution, but it is the BEST solution.)

You probably have a .profile, .login or similar setup that defines your environment variables.  Perl can not read that configuration.  (Or at least SHOULD not.)  And you probably don't want to maintain separate copies of the setup in different languages.  Therefore, all your cron jobs must use the shell that understands your setup script(s).

The wrapper script typically has 2 lines.  For sh-style configurations (and I suppose ksh) it will look like this:

. $HOME/.profile
myscript.pl

For csh-style it would be

#!/bin/csh
source $HOME/.login
myscript.pl

Here I assume that cron correctly sets HOME. If not, you'd better use a full path.

 

Your answer will be published for anyone to see and rate.  Your answer will not be displayed immediately.  If you'd like to get expert points and benefit from positive ratings, please create a new account or login into an existing account below.


Your name or nickname:
If you'd like to create a new account or access your existing account, put in your password here:
Your answer:

FAQS.ORG reserves the right to edit your answer as to improve its clarity.  By submitting your answer you authorize FAQS.ORG to publish your answer on the WWW without any restrictions. You agree to hold harmless and indemnify FAQS.ORG against any claims, costs, or damages resulting from publishing your answer.

 

FAQS.ORG makes no guarantees as to the accuracy of the posts. Each post is the personal opinion of the poster. These posts are not intended to substitute for medical, tax, legal, investment, accounting, or other professional advice. FAQS.ORG does not endorse any opinion or any product or service mentioned mentioned in these posts.

 

<< Back to: Csh Programming Considered Harmful


[ Home  |  FAQ-Related Q&As  |  General Q&As  |  Answered Questions ]

© 2008 FAQS.ORG. All rights reserved.