Global variable value


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Global variable value
# 1  
Old 08-31-2011
PHP Global variable value

Hi All,

Im new to shell scripting. I am running EgA.sh and setting one global variable XYZ=0 . Also calling another EgB.sh from EgA.sh, changing the value of XYZ=10
but after executing EgB.sh, value of XYZ is still 0. Im expecting it to be 10.

Anyone for help. Thanks in Advance. Smilie
# 2  
Old 08-31-2011
Variables can be exported in the environment and thus are visible to called scripts and/or programmes, but the environment changes by a called process cannot "trickle up" to the caller.

If you have one value from the called script that you'd like to have in the parent, you can write it to standard out and have the parent assign the output to a local variable.

Code:
export result=5         # place into environment for other scripts
result=$(script_b.sh)
echo "result = $result"

and in script_b
Code:
result=$(( $result * 2 ))
echo $result

This is not a perfect solution as everything that script B echoes will be assigned to the variable in script A, but it might do what you need.
# 3  
Old 08-31-2011
Thanks Agama, for quick reply. But my script_b.sh doing some other work also and hence return value is not like what Im expecting, as you said and I tried also.
# 4  
Old 09-01-2011
If you want to post the scripts someone might have a suggestion that might get you what you need.
# 5  
Old 09-01-2011
Hi Agama,

Basically I have to install oracle using silent installer .. and after installing oracle, need to create user and Database using the script.
So what I am doing... im calling oracle installer script from main script and when that script finish its work(i.e oracle installation) i need to create users and DB using the main script but that part of script must execute when oracle installation finished by the other script.

Hope this will explain the requirement. Smilie
# 6  
Old 09-01-2011
Well, I'm still confused. I've never installed Oracle so I'm not sure what all is involved there. I'd assume that the installation script detaches from the parent and thus control is returned immediately as the installation continues to work asynchronously and you are having difficulty determining when the install is complete. If not, then it would seem that your control script would block nicely until the install is finished, and then you could continue on as desired.

If the install is running asynchronously, then you might be able to 'watch' it execute using pgrep or similar command blocking in your script until the process has exited. Of course this is problematic as there may not be any way of telling if the install was successful.

Maybe someone with some Oracle experience will chime in with some suggestions.
This User Gave Thanks to agama For This Post:
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Global Variable

Hi, I have created a variable say today at the begin having 123 as its value and inside a for loop it gets resolved to some value say 150 in its first iteration. How can I use this value 150 ( 1st iteration's ) outside the scope of for loop ?. In the same way I wanted to use all iteration's... (1 Reply)
Discussion started by: penqueen
1 Replies

2. Programming

Structure as global variable

I need to use the below global structure defined in code1.c in another code2.c struct memIOptrs { const char *name; unsigned char *virtptr; }MEM_IO_PTRS; I have a header file for the project codes.h, how should the structure be declared here. Also, what if the structure was... (1 Reply)
Discussion started by: dragonpoint
1 Replies

3. Shell Programming and Scripting

Help with Global Variable

Hi Guyz, I have a requirement like, i have to run a script every hour to count the number of errors encountered. At the end of the day, i need to send them the total number of errors, that have ocurred the entire day. For eg. if 10 errors occurred for starting 1 hr, 5 for next 1 hr, so on.... (1 Reply)
Discussion started by: DTechBuddy
1 Replies

4. Shell Programming and Scripting

global variable not holding its value?

dear there, this kept me awake last night, the variable ${TO} in the following script doesn't seem to hold its value. I have a file ./filelist, which lists all files of interests. I group them by keywords in the filename, and would like to count total number of lines in each group. ... (7 Replies)
Discussion started by: patiobarbecue
7 Replies

5. Shell Programming and Scripting

Global variable

I have written a shell scritp in which i am using a variable which is declared before a while loop and i am updaitng the variable in while loop and want to use its updated value outside the loop. I am not able to do so, b'coz the scope of the variable is limited to the while loop only and when i am... (5 Replies)
Discussion started by: deepanshu
5 Replies

6. Shell Programming and Scripting

global variable not being set

In ksh I thought a global variable was any variable in a script or function that did not have the typeset command. I have a global in my calling script which I increment in a function, but the value does not change in the calling script. Here is the code: function f_open_log { typeset -r... (5 Replies)
Discussion started by: robotball
5 Replies

7. Shell Programming and Scripting

global variable in awk

I wrote a awk script file and define some global variables after BEGIN option: BEGIN { cell = ""; alarm = "";} when i run the command: awk -f awk_script inputfile The results are as expected. But when I put awk script into a shell script. Global variables couldn't be understand. I don't... (1 Reply)
Discussion started by: anhtt
1 Replies

8. Shell Programming and Scripting

Global Variable in a script?

How to create a Global variable within a script file. say i want a varaible called LOGFILE to be used within all the script. how to do that? (2 Replies)
Discussion started by: skyineyes
2 Replies

9. Shell Programming and Scripting

Global Variable in awk...

i think..... it's possible use a variable out a awk in the awk ??? ex. A=20071225 awk '{ print "the value is" $a }' OR awk '{ print "........"; c=10; print $c ; c=$A ; print $A}' for a external variable is possbile use in the awk ??? (1 Reply)
Discussion started by: ZINGARO
1 Replies

10. Shell Programming and Scripting

Global variable becomes local

I have encountered a very weird behavior of a global variable in Korn Shell in AIX: A function f1 in my script pipes the output of the function f2 to a program. A variable defined as global using typeset gets its value in f2. That value is not seen in f1. If I remove the pipe ksh recognizes the... (2 Replies)
Discussion started by: odashe318
2 Replies
Login or Register to Ask a Question