Sponsored Content
Top Forums Shell Programming and Scripting passing of a varibale to subshell Post 302198919 by Franklin52 on Sunday 25th of May 2008 07:31:21 AM
Old 05-25-2008
The environment of a parent process is inherited by the child process but not visa versa.
An example to achieve this is:

first.sh:

Code:
#!/bin/ksh

var=100
echo "Before : $var"
var=$(. ./second.sh)
echo "After: $var"

second.sh:

Code:
#!/bin/ksh

let "var = var + 50"
echo $var

Regards
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Subshell Question

The profile of the user is empty. Then before I run the script I want I run a parameter file that populates the variables for oracle. ORACLE_HOME ORACLE_BASE ORACLE_SID PATH etc ... But it seems that these variables are not making it to the shell I am in because when I do an echo on... (6 Replies)
Discussion started by: lesstjm
6 Replies

2. Shell Programming and Scripting

passing result of query to a varibale in ksh script

Hi, I have a scenario where in i have to extarct max of one column and pass it to a variable. i have tried to export the result as .dat file and read from that file.But my database is mainframe and it is not permitting me to export in .dat file.I have tried using .ixf file but reading from... (2 Replies)
Discussion started by: ammu
2 Replies

3. Shell Programming and Scripting

Varibale to NULL or ZERO

I have a variable called V_param1 and does it have some value. I want to check this varibale is NULL or Zero then exit else do How to incorported this in Script. any input (2 Replies)
Discussion started by: u263066
2 Replies

4. Shell Programming and Scripting

How to use a varibale in sed

i wanna insert a row in a file. I m using this command to insert a row in the 13th line. sed '13i\ NewRow' MyFile > temp.txt mv temp.txt to MyFile this works fine. now i wanna get the line no using grep into a variable and then use tht variable to insert a new row.. how to do this wid... (8 Replies)
Discussion started by: St.Fartatric
8 Replies

5. Shell Programming and Scripting

Passing arguments to the subshell

I have a shell script which is invoked by passing an argument. The outer shell script calls another subshell and I want the argument passed down to flow down to the subshell. E.g Invoking a shell ======>> abc_refresh.ksh NM Below is the content of abc_refresh.ksh Value1=$1... (7 Replies)
Discussion started by: Mihirjani
7 Replies

6. Shell Programming and Scripting

Killing a subshell

I am calling a script from with another script and reading its output one line at a time (using <childscript> | while read line) in the parent script. If the output exceeds a predefined number of lines I want to kill the child shell from within the parent shell. I decided to print the process ID... (2 Replies)
Discussion started by: slash_blog
2 Replies

7. Shell Programming and Scripting

getopts in a subshell

Hello, I've a little problem with one of my ksh scripts and I manage to narrow it to the script here: #!/bin/ksh writeLog() { paramHandle="unknown" OPTIND=1 while getopts :i: option $* do case $option in i) paramHandle=${OPTARG} ;; esac done echo... (2 Replies)
Discussion started by: Dahu
2 Replies

8. Shell Programming and Scripting

Basename in subshell

Hi All, I would like to improve my bash scripting skill and found a problem which I do not understand. Task is to search and print files in directory (and subdirecories) which contains its own name. Files can have spaces in name. This one works fine for files in main directory, but not for... (4 Replies)
Discussion started by: new_item
4 Replies

9. UNIX for Dummies Questions & Answers

set varibale to be output of a command

Hi there! :) How to set varibale to be output of a command in csh. I was using set i="date+'%y%m%d'" but the output is date+'%y%m%d' and without quites and with a single quote the output is the same :wall: :eek: Thanks in advance (2 Replies)
Discussion started by: FUTURE_EINSTEIN
2 Replies

10. Shell Programming and Scripting

How to pass IF condition via shell varibale in awk?

Hello, I have one query regarding passing IF condition shell variable inside awk. Here is the case- File content of keydefn.exp 201~2~LM Limit 02-current value~Limit 02 ~Limit02~Current~Value ~N~Y~S~0~9999999 201~3~LM Limit 03-current value~Limit... (2 Replies)
Discussion started by: anillambait
2 Replies
SU(1)							    BSD General Commands Manual 						     SU(1)

NAME
su -- substitute user identity SYNOPSIS
su [-flm] [login] [-c shell arguments] DESCRIPTION
su requests the password for login and switches to that user and group ID after obtaining proper authentication. A shell is then executed, and any additional shell arguments after the login name are passed to the shell. If su is executed by root, no password is requested and a shell with the appropriate user ID is executed. The options are as follows: -c Invoke the following command in a subshell as the specified user. -f If the invoked shell is csh(1), this option prevents it from reading the ``.cshrc'' file. -l Simulate a full login. The environment is discarded except for HOME, SHELL, PATH, TERM, and USER. HOME and SHELL are modified as above. USER is set to the target login. PATH is set to ``/bin:/usr/bin''. TERM is imported from your current environment. The invoked shell is the target login's, and su will change directory to the target login's home directory. This option is identical to just passing "-", as in "su -". -m Leave the environment unmodified. The invoked shell is your login shell, and no directory changes are made. As a security precau- tion, if the target user's shell is a non-standard shell (as defined by getusershell(3)) and the caller's real uid is non-zero, su will fail. The -l and -m options are mutually exclusive; the last one specified overrides any previous ones. Only users in group ``wheel'' (normally gid 0) or group ``admin'' (normally gid 20) can su to ``root''. By default (unless the prompt is reset by a startup file) the super-user prompt is set to ``#'' to remind one of its awesome power. SEE ALSO
csh(1), login(1), sh(1), skey(1), kinit(1), kerberos(1), passwd(5), group(5), environ(7) ENVIRONMENT
Environment variables used by su : HOME Default home directory of real user ID unless modified as specified above. PATH Default search path of real user ID unless modified as specified above. TERM Provides terminal type which may be retained for the substituted user ID. USER The user ID is always the effective ID (the target user ID) after an su unless the user ID is 0 (root). HISTORY
A su command appeared in Version 7 AT&T UNIX. BSD
April 18, 1994 BSD
All times are GMT -4. The time now is 08:23 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy