03-18-2010
Set/Export Env Vars from with Shell Script With Input Variable
I have a shell script I want to run that will set environment variables based on the value of an input variable submitted when the shell script is called. For example:
$ mgenv.sh prod
This would set environment variables for prod
$ mgenv.sh test
This would set environment variables for test
When I run the script using the syntax above, it works fine. However, my environment variables are not being set. Example of the syntax used in the shell script:
FIN_INTERFACE_DIR=\u06\interfaces\$1;export FIN_INTERFACE_DIR
Like I said, the script runs to completion, no errors reported - and then I check my environment variables and FIN_INTERFACE_DIR is not set.
If I take the input variable of the equation and hard code in my environment variables like so:
FIN_INTERFACE_DIR=\u06\interfaces\prod;export FIN_INTERFACE_DIR
Then run it with this command:
$ mgenv.sh
I get the same result - the script runs through clean without errors but no environment variables are set.
HOWEVER, my next test was to use the hardcoded variable but run the script with the following command:
$ . ./mgenv.sh
This worked great! Environment variable was set and exported. Finally - I use the new command and re-institute the use of the run-time variable $1 and run the following command:
$ . ./mgenv.sh prod
At this, I get the dreaded
1: parameter not set
So - how can I run this script with an input parameter and have it actually set environment variable? Any suggestions? Thanks.
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
I'm having an issue when I export within my program. I'm getting the variable name, not the variable value. I have a configuration file (config.txt) that has the values of the variables set as so:
set -a
export ARCHIVEPOSourceDir="/interfaces/po/log /interfaces/po/data"
export... (2 Replies)
Discussion started by: ParNone
2 Replies
2. AIX
Hi,
I have installed ODWEK software on AIX box and set the environment variables like: PATH,LIBPATH,LD_LIBRARY_PATH,CLASSPATH.
My question here is do I need to reboot the system to take these changes or is there anyother workaround. I heard that there is 'export'. But I don't know how far it... (1 Reply)
Discussion started by: srangu
1 Replies
3. AIX
Hi,
I have installed ODWEK software on AIX box and set the environment variables like: PATH,LIBPATH,LD_LIBRARY_PATH,CLASSPATH.
My question here is do I need to reboot the system to take these changes or is there anyother workaround. I heard that there is 'export'. But I don't know how far it... (1 Reply)
Discussion started by: srangu
1 Replies
4. Shell Programming and Scripting
Hello,
<Preamble>
I'm writing an installation script for use with PKGADD. What I want to do is take one of the variables set in the REQUEST script and use that in the install script so I can change applications configuration.
My install script is as follows:
sed '
/^DIRNAME/ i\... (8 Replies)
Discussion started by: Bags
8 Replies
5. UNIX for Advanced & Expert Users
Hi !
How to export ENV variables, which remains set for all the shell
Example :-
Login :myID
Pwd : **** -> Here my ID .profile is executed. Let say I set MYENV variable
Kisses% rlogin ABC -l XXXGroupID -> I login into a remote Solaris Server ABC
password : **** -> "XXXGroupID's... (1 Reply)
Discussion started by: dashok.83
1 Replies
6. Shell Programming and Scripting
Hi,
I have two scripts say one.sh and two.sh.
I want one.sh to continuously export a variable in loop. and when two.sh starts then it should read the last value exported from one.sh.
file: one.sh
#! bin/sh
for i in `seq 1 1 4000000`; do
export VAR=$(($i**$i)) ;
done
file two.sh
... (2 Replies)
Discussion started by: bhushan123
2 Replies
7. Solaris
Hi
I'm trying to understand variable scopes in solaris10.
It is said that to display env variables we use 3 commands :
- env
- set
- export
What is the difference between them ?
thx for help.
---------- Post updated at 11:00 AM ---------- Previous update was at 10:50 AM ----------
... (2 Replies)
Discussion started by: presul
2 Replies
8. Shell Programming and Scripting
greetings,
i have a sh script that calls a python script. the sh script sets an env variable BIN:
export BIN=bin64i need to get that BIN variable's value and use it within this python script. anyone know how to do this? thanx in advance. (5 Replies)
Discussion started by: crimso
5 Replies
9. Shell Programming and Scripting
Hia,
echo ${!S*}
gives me all those env vars starting with S like SHELL SECONDS SHELLOPTS SHLVL etc.
is there any way to deflate the shell variables' range like
echo ${!A-E*} OR echo ${!A..S*}
to list all env vars starting within range of A till E. Thanks
Regards,
Nasir (1 Reply)
Discussion started by: busyboy
1 Replies
10. Shell Programming and Scripting
Hi all
I am trying to create a script that takes a password input then writes that to a tmp file and puts that tmp file path in my env as a var.
It does everything but export the my env and I am unsure why.
I am using Ubuntu 12.4
#!/bin/bash
read -s -p "Enter Password: " gfpassword... (5 Replies)
Discussion started by: koikoi
5 Replies
exit(1) User Commands exit(1)
NAME
exit, return, goto - shell built-in functions to enable the execution of the shell to advance beyond its sequence of steps
SYNOPSIS
sh
exit [n]
return [n]
csh
exit [ ( expr )]
goto label
ksh
*exit [n]
*return [n]
DESCRIPTION
sh
exit will cause the calling shell or shell script to exit with the exit status specified by n. If n is omitted the exit status is that of
the last command executed (an EOF will also cause the shell to exit.)
return causes a function to exit with the return value specified by n. If n is omitted, the return status is that of the last command exe-
cuted.
csh
exit will cause the calling shell or shell script to exit, either with the value of the status variable or with the value specified by the
expression expr.
The goto built-in uses a specified label as a search string amongst commands. The shell rewinds its input as much as possible and searches
for a line of the form label: possibly preceded by space or tab characters. Execution continues after the indicated line. It is an error to
jump to a label that occurs between a while or for built-in command and its corresponding end.
ksh
exit will cause the calling shell or shell script to exit with the exit status specified by n. The value will be the least significant 8
bits of the specified status. If n is omitted then the exit status is that of the last command executed. When exit occurs when executing
a trap, the last command refers to the command that executed before the trap was invoked. An end-of-file will also cause the shell to exit
except for a shell which has the ignoreeof option (See set below) turned on.
return causes a shell function or '.' script to return to the invoking script with the return status specified by n. The value will be the
least significant 8 bits of the specified status. If n is omitted then the return status is that of the last command executed. If return
is invoked while not in a function or a '.' script, then it is the same as an exit.
On this man page, ksh(1) commands that are preceded by one or two * (asterisks) are treated specially in the following ways:
1. Variable assignment lists preceding the command remain in effect when the command completes.
2. I/O redirections are processed after variable assignments.
3. Errors cause a script that contains them to abort.
4. Words, following a command preceded by ** that are in the format of a variable assignment, are expanded with the same rules as a vari-
able assignment. This means that tilde substitution is performed after the = sign and word splitting and file name generation are not
performed.
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
+-----------------------------+-----------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
|Availability |SUNWcsu |
+-----------------------------+-----------------------------+
SEE ALSO
break(1), csh(1), ksh(1), sh(1), attributes(5)
SunOS 5.10 15 Apr 1994 exit(1)