04-28-2006
Using Environment Variable
In our current environment we have each of our testing levels on individual servers (running Korn shell). So, there is a server for dev and test, and 2 servers for qa and prod. I have several scripts that utilize a code that is dependant on the server where it resides. While I was the only person using these scripts, I had that value hard coded in my scripts (they were quick and dirty scripts). Now we have several folks that will be supporting this and I want to keep the scripts in a central repository and change this value to be an environment variable.
My thought is to set this as an environment variable in the users .profile. Then the scripts will use that variable, instead of having to change it for each server/test level.
My assumption, and from everything I've read, is that if I export the variable in my profile, it should be available to scripts when executed. But, that is not what I am seeing. And these scripts are executed by the user from the command line.
Here is an example. Any help would be appreciated.
.profile:
VAR=server_a
export $VAR
script:
some_command $VAR #executes command passing in $VAR
When I do this, $VAR does not seem to contain server_a. It is empty instead. However, if I echo out $VAR at the command line, it does equal server_a.
A solution that does seem to work, is to set the variable in a .kshrc file and execute that in my script prior to using it. But I would prefer to have it set in the profile and have it available for the scripts.
Any help would be appreciated. Thanx
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
Hello,
I need some help to understand system and user environment files, such as .profile and others. I can edit my .profile file in my home directory. What I only touch in this file is the $PATH variable and when I am logged in under a telnet session, the PATH that I specify is used and... (8 Replies)
Discussion started by: jacobsa
8 Replies
2. UNIX for Advanced & Expert Users
what is the environment variable used for getting the <machine name> .
hello $LOGNAME,welcome to <??>
I want to print the machine name in the place of <??>
Please help. (6 Replies)
Discussion started by: mehuldoshi
6 Replies
3. UNIX for Dummies Questions & Answers
$ . oraenv (when i type this at the prompt)
ORACLE_SID = ? ( I get this)
I understand that . oraenv is a startup script and it has the ENV variable ORACLE_SID.
But pls let me know what more it explains and also how to change the env variable here. (2 Replies)
Discussion started by: thumsup9
2 Replies
4. Shell Programming and Scripting
First of all I am using C shell.
I have a variable destDirectory that holds a path.
the path includes an environment variable($user)
when I try to execute a command within the script, the $destDirectory gets replaced with the path, but the environment variable is not replaced. I end up... (2 Replies)
Discussion started by: karyn1617
2 Replies
5. Shell Programming and Scripting
Hi,
I have to set bunch of variables and all other programs like make,
perl will use them ..
Here are my constraints and requirements ...
The variables have to be set by executing a script that runs
in c shell. I cannot source the script since people who use this
script might be on... (8 Replies)
Discussion started by: sharanbr
8 Replies
6. Solaris
Hello,
For the moment, my LC_ALL variable is set as "" by default. If I want to change this value, I do : export LC_ALL="en_fr" for example.
That I want to know it's : how can I set by default this value ? I want to save it on my profile in order to get it when I open my session... :confused:... (2 Replies)
Discussion started by: MasterapocA
2 Replies
7. Shell Programming and Scripting
i am not clear at some places i saw that assigning a env var with colon ':' like
export PATH=/usr/bin:/usr/ucb:/etc:/usr/sbin:.:/usr/platform/sun4u/sbin
here you can find : and a . and again :
could some one explain how it works...
see all is starting from root directory,
how : is used and... (6 Replies)
Discussion started by: Arunprasad
6 Replies
8. UNIX for Dummies Questions & Answers
Hi!
Ok, so I'm no programmer and I have basically no experience in these stuff. However I need to work on a thing (I think you call it Framework) called Root. It's a tool used by physicists. In the manual they keep talking about Environment variable. Even thou I searched for what it is on the... (5 Replies)
Discussion started by: tirwit
5 Replies
9. Solaris
Hi All,
I am new to SUN Solaris.I have some questions regarding environment variable.:confused:
Q1. Where the environment variables available in Solaris.
Q2. What command used here.
Q3. Can a user change this .Suppose i want to change the bash to ksh can it be possible here. Or i need to... (2 Replies)
Discussion started by: jdash.ps
2 Replies
10. Shell Programming and Scripting
I'm trying to make a sed substitution where the substitution pattern is an environment variable to be expanded, but the variable contains a "slash".
sed -e 's/<HOME_DIRECTORY>/'$HOME'/'This gives me the following error:
sed: -e expression #1, char 21: unknown option to `s'Obviously this is... (2 Replies)
Discussion started by: Ilja
2 Replies
LEARN ABOUT MOJAVE
platform::shell
platform::shell(n) Tcl Bundled Packages platform::shell(n)
__________________________________________________________________________________________________________________________________________________
NAME
platform::shell - System identification support code and utilities
SYNOPSIS
package require platform::shell ?1.1.4?
platform::shell::generic shell
platform::shell::identify shell
platform::shell::platform shell
_________________________________________________________________
DESCRIPTION
The platform::shell package provides several utility commands useful for the identification of the architecture of a specific Tcl shell.
This package allows the identification of the architecture of a specific Tcl shell different from the shell running the package. The only
requirement is that the other shell (identified by its path), is actually executable on the current machine.
While for most platform this means that the architecture of the interrogated shell is identical to the architecture of the running shell
this is not generally true. A counter example are all platforms which have 32 and 64 bit variants and where a 64bit system is able to run
32bit code. For these running and interrogated shell may have different 32/64 bit settings and thus different identifiers.
For applications like a code repository it is important to identify the architecture of the shell which will actually run the installed
packages, versus the architecture of the shell running the repository software.
COMMANDS
platform::shell::identify shell
This command does the same identification as platform::identify, for the specified Tcl shell, in contrast to the running shell.
platform::shell::generic shell
This command does the same identification as platform::generic, for the specified Tcl shell, in contrast to the running shell.
platform::shell::platform shell
This command returns the contents of tcl_platform(platform) for the specified Tcl shell.
KEYWORDS
operating system, cpu architecture, platform, architecture
platform::shell 1.1.4 platform::shell(n)