perl. How to set persistent environment variables


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting perl. How to set persistent environment variables
# 8  
Old 05-25-2010
Quote:
Originally Posted by Corona688
It has to be run [b]inside[/i] your own shell in order to successfully set environment variables. This means your perl script will never work -- even if perl runs, your perl interpreter will have its own separate environment.

Fortunately it's extremely easy to convert this script into a generic shell script.

Code:
export ORACLE_SID="D3771"
export ORACLE_HOME="/oracle/product/10.2.0/db_1"

You should be able to source this file fine.
It is very easy, but don't overlook the O/P's statement about string manipulation (of which we know nothing Smilie)
# 9  
Old 05-25-2010
Quote:
Originally Posted by MKNENI
I can't set this in the .profile because I keep executing the script by passing a parameter and this perl script should set the env variables based on the parameter.
That changes the problem quite a bit.

You will need to have the script execute the necessary program inside it then, so it can export things the way you want them, then launch the program with the updated environment.

Code:
#!/bin/ksh

export ORACLE_SID="D3771"
export ORACLE_HOME="/oracle/product/10.2.0/db_1"

exec my_program

Or in perl:
Code:
#!/usr/bin/perl

export_environment_as_I_please;

system("program");

# 10  
Old 05-26-2010
do you need to run ur script only with 1 setting. or do u need to change both the variables depending upon some parameters.
# 11  
Old 05-31-2010
Thanks you guys. Looks like its lot of pain using perl to set evn varialble.

I switched to shell script. That is working good.

Thanks again to everybody.

SmilieSmilie
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Trying to figure out how the environment variables are being set

I just started a new job and I've been tasked with cleaning up the files that set up all the environment variables. The system works as is. What happens is: 1. You log in to the server. 2. You call a file that sets a bunch of environment variables and that displays a list of all the databases... (4 Replies)
Discussion started by: Keyeh
4 Replies

2. Shell Programming and Scripting

Need to SET Environment variables

Hi Could you please tell me how to set environment variables in Unix ksh. And how can acess those varibles in shell scripts ( Please give the code with an example) For my scenario. We have written number of shell scripts with hard coded username and password. But if we want to... (1 Reply)
Discussion started by: shyamu544
1 Replies

3. SCO

Help finding where certain environment variables are set

i have two machines that should be identical but on one system there are some oracle environment (ORACLE_SID, ORACLE_HOME, etc...) variables that are not being set for the users. I am trying to find where those environment variables are being set on the system which is working properly. All... (5 Replies)
Discussion started by: kuliksco
5 Replies

4. Shell Programming and Scripting

Set environment

Hi, I can run shell script from the command line using $ . set If the run the script inside perl script using $var = system("set"); print $var; This prints 0. This command sets up the environment from command line. But when used inside the shell script or perl script it... (2 Replies)
Discussion started by: sandy1028
2 Replies

5. Solaris

set environment variable?

I am working with solaris 9 sunBlade150 Box. I Installed a program, need to set the environment variable so that when the executable is entered,it finds the path to the executable. The documentation for the software says: Set the appropriate environment variable: Connect to server failed;... (8 Replies)
Discussion started by: smartgupta
8 Replies

6. Shell Programming and Scripting

Environment variables in Perl

I don't use perl very often, and am stuck on how to create a perl variable from a literal and an environment variable; eg $FILE='/u/output'+env($UNIQUE_ID); Also how does the Apache web server create the UNIQUE_ID environment variable, and will an 8 character substring from 3 to 10 incl, in... (2 Replies)
Discussion started by: jgt
2 Replies

7. Linux

How do i set environment variable

Hi, I am quite new to Linux. And I have doubt how to set new environment variable with value to a C executable. Let say I have a environment variable $Hack ; I would like to load a value for this variable; so that when the C executable is executed, the $Hack would set the variable value. ... (4 Replies)
Discussion started by: ahjiefreak
4 Replies

8. UNIX for Advanced & Expert Users

by using c++ how to set environment variables in unix

hi, I am writing c++ code in unix operating system.In that i need to set the environment variable in unix. suppose previously i have environment variable like path="something" now i need to change the path value to some othervalue . so that some other program will access that path value... (1 Reply)
Discussion started by: sada@123
1 Replies

9. UNIX for Advanced & Expert Users

set environment variable?

Installed a program, need to set the system up so that when the executable is entered, it finds the path to the executable. In Windows, set under system properties, advanced, environmental variables. How do I do this with Unix? Specifically using Solaris 9. I have tried: env... (3 Replies)
Discussion started by: kohoutek
3 Replies

10. UNIX for Dummies Questions & Answers

how to set up linux environment variables?

Hi I'm using Linux, in the directory /root/my there is a.out. but when I try to run it , the shell indicate "bash:a.out: command not found" but I AM working in this directory. if I use "./a.out" , it works perfectly. can any body tell me how to do a permanent set up so that I can use... (5 Replies)
Discussion started by: dell9
5 Replies
Login or Register to Ask a Question