Extracting value of a variable


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Extracting value of a variable
# 1  
Old 09-15-2015
Extracting value of a variable

Hi Experts,

I have one scenario here. I want to extract the value of a variable as mentioned below using a shell script (bash).

I am having a file say File A. Inside the file, I have a variable assigned a string value.
File A:
Var1="value of the variable"

In a particular script "variable_name.sh", I am getting the input as Var1. Inside the script I am sourcing the File as well.
Executed as ./variable_name.sh Var1

I want to store the Var1's value inside another variable in the script as mentioned below.
Var_val=$1
extracted_variable=`echo "$[$Var_val]"`

Output required:
value of the variable

But when I try this, it is returned as 0. If I assign any number to Var1 (say Var1=100) then it is returning the value as 100.

Could you please help me in extracting the string value that is stored in Var1?

Regards & Thanks,
Vivek
# 2  
Old 09-15-2015
Not sure if this is what you are after:-
Longhand using OSX 10.7.5, default bash terminal...
Code:
Last login: Tue Sep 15 09:01:15 on ttys000
AMIGA:barrywalker~> echo "VAR1='This is a test.'" > /tmp/variable
AMIGA:barrywalker~> source /tmp/variable
AMIGA:barrywalker~> VAR_VAL=$VAR1
AMIGA:barrywalker~> echo "$VAR_VAL"
This is a test.
AMIGA:barrywalker~> _

# 3  
Old 09-15-2015
man bash:
Quote:
Arithmetic Expansion
Arithmetic expansion allows the evaluation of an arithmetic expression and the substitution of the result. The format for arithmetic expansion is:
$((expression))
The old format $[expression] is deprecated and will be removed in upcoming versions of bash.
If you evaluate a text variable, it will evaluate to 0. Quote the variable when used as a parameter to a function as it contains spaces. You don't need the echo when assigning to a new variable.
# 4  
Old 09-15-2015
Hi Wisecracker,

I am not assigning as such.
AMIGA:barrywalker~> VAR_VAL=$VAR1

I am assigning like VAR_key=$1 ($1 is the input to the script)
$1 will be VAR1

I want to retrieve the string that is present in VAR_key. That is what I am trying to do here,
extracted_variable=`echo "$[$Var_key]"`

<B>@RudiC </B> : Variable will not have a text with spaces. It will be a string like this.
"THIS_IS_A_TEXT".

Thanks.
# 5  
Old 09-15-2015
Quote:
Originally Posted by guknvivek
I am assigning like VAR_key=$1 ($1 is the input to the script)
$1 will be VAR1

I want to retrieve the string that is present in VAR_key. That is what I am trying to do here,
extracted_variable=`echo "$[$Var_key]"`
Smilie

The way to "retrieve" a variable in shell is $.

Code:
# VAR="value"
# echo $var

value

#

# 6  
Old 09-15-2015
My requirement in simple words,

Var1="Value"
Var2=Var1

I want to assign "Value" to Var2. As per my original post, If I have a number instead of "value" then I am able to retrieve it.

Thanks
# 7  
Old 09-15-2015
Do you mean like this:-
OSX 10.7.5, default terminal using 'sh'...
Code:
#!/bin/sh
# value
$1
echo $VAR1

Manually generate another file, (your File A), for testing and run 'value' file...
Code:
Last login: Tue Sep 15 19:47:17 on ttys000
AMIGA:barrywalker~> cd Desktop/Code/Shell
AMIGA:barrywalker~/Desktop/Code/Shell> chmod 755 value
AMIGA:barrywalker~/Desktop/Code/Shell> echo "VAR1=125" > /tmp/variable
AMIGA:barrywalker~/Desktop/Code/Shell> ./value 'source /tmp/variable'
125
AMIGA:barrywalker~/Desktop/Code/Shell> _

If this is NOT what you want the I have no idea what you have in mind...
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Extracting substring from variable

Hi All, I'm facing issue wherein I have 2 character string like 'CR' and 'DR' and I want to extract just 1st character but am unable to do it. I tried below options but they are returning me 2nd character only, var="CR" echo ${var:1} returns just "R" echo ${var:0} returns "CR" ... (5 Replies)
Discussion started by: arvindshukla81
5 Replies

2. Shell Programming and Scripting

Extracting substrings from a string of variable length

I have a string like Months=jan feb mar april x y .. Here the number of fields in Months is not definite I need to extract each field in the Months string and pass it to awk . Don't want to use for in since it is a loop . How can i do it (2 Replies)
Discussion started by: Nevergivup
2 Replies

3. Shell Programming and Scripting

Extracting characters and storing in some variable

eg: ./myProgram.sh filename.cpp I want to remove the :".cpp" extension from the filename.cpp expected output: filename (3 Replies)
Discussion started by: umesh314
3 Replies

4. Shell Programming and Scripting

extracting Number variable and the following digits.

HI all, I have output of something like this: crab: ExitCodes Summary >>>>>>>>> 12 Jobs with Wrapper Exit Code : 50117 List of jobs: 1-12 See https:///twiki/something/ for Exit Code meaning crab: ExitCodes Summary >>>>>>>>> 5 Jobs with Wrapper Exit Code : 8001 List of... (20 Replies)
Discussion started by: emily
20 Replies

5. Red Hat

How to pass value of pwd as variable in SED to replace variable in a script file

Hi all, Hereby wish to have your advise for below: Main concept is I intend to get current directory of my script file. This script file will be copied to /etc/init.d. A string in this copy will be replaced with current directory value. Below is original script file: ... (6 Replies)
Discussion started by: cielle
6 Replies

6. Shell Programming and Scripting

Extracting variable value from file

Hi All i have created a file as below cat > REJ_FILE_LIST.dat CUST.DAT,$ABC/TEST.DAT|$ABC/TEST1.DAT|$ABC/TEST2.dat Ctrl+d in another script the variable is set as ABC='/data/proj/Cust' the requirement is to read the second column from file REJ_FILE_LIST.dat which contains... (1 Reply)
Discussion started by: zulfi123786
1 Replies

7. Shell Programming and Scripting

Extracting data from SQL using a variable from a file

Though, its not new, I am a newbie to shell scripting. Please help me with the below. There are two steps. First one is to read a table and create a file with the distinct values. I am able to get this done. Second step is to read the file (which has the single value, like a number) and... (1 Reply)
Discussion started by: singas1
1 Replies

8. Shell Programming and Scripting

Extracting a word from a variable

Hi Guys, Need you quick assistance on the below, trying to extract a word from a variable i.e. acmi101acmi102acmi103acmi104 When i use the following code awk '{gsub(/cmi102/,"")};1' it leaves a space in the variable, need to get rid of the space that it leaves. Any ideas. the above... (3 Replies)
Discussion started by: eo29
3 Replies

9. Shell Programming and Scripting

How to define a variable with variable definition is stored in a variable?

Hi all, I have a variable say var1 (output from somewhere, which I can't change)which store something like this: echo $var1 name=fred age=25 address="123 abc" password=pass1234 how can I make the variable $name, $age, $address and $password contain the info? I mean do this in a... (1 Reply)
Discussion started by: freddy1228
1 Replies

10. Shell Programming and Scripting

extracting value in variable??

Hi in Below example. i want "n = aa.txt.gz" ????????????? plz help m=aa.txt n=echo`gzip $m` echo $n (1 Reply)
Discussion started by: manish.s
1 Replies
Login or Register to Ask a Question