Variable substitution error


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Variable substitution error
# 1  
Old 12-12-2007
Variable substitution error

Hi
The following command gives me error :The specified substitution is not valid for this command

export DB_ID=${DB_${MART}_USER}

What is the correct syntax for the above ?
# 2  
Old 12-12-2007
something like

Code:
DB_ID=`sh -c "echo DB_${MART}_USER"`
DB_ID=`sh -c "echo \$$DB_ID"`
export DB_ID

or you could try eval
# 3  
Old 12-12-2007
I think you want this:

Quote:
$ MART=wall
$ DB_wall_USER=wallmart
$ eval eval export DB_ID=\${DB_${MART}_USER}
$ echo $DB_ID
wallmart
HTH.
# 4  
Old 12-12-2007
Hi

Thanks for the suggestion but It doesnt seem to retrieve the value of the variable correctly in 2

(1)
DB_ID=`sh -c "echo DB_${MART}_USER"`

Result = DB_XMM_USER
(2)
DB_ID=`sh -c "echo \$$DB_ID"`
Result = 1233DB_ID

I need to be able to get the value of DB_XMM_USER ie ${DB_XMM_USER}
# 5  
Old 12-12-2007
Quote:
Originally Posted by cosec
DB_ID=`sh -c "echo \$$DB_ID"`
Result = 1233DB_ID
Seems you did

DB_ID=`sh -c "echo $$DB_ID"`

where $$ expanded to the current process id.

The slash prefixing the first $ is to have it taken literally.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Variable substitution

Hi, I have to write a shell script in which I have to substitute a variable within a variable. For example, var1=aaa var2=file.$var1.txt The output should be, echo $var2 file.aaa.txt Can someone please help me in getting this. I tried using eval, but it didnt work. I might be using it... (2 Replies)
Discussion started by: grajp002
2 Replies

2. Shell Programming and Scripting

How to use variable with command substitution in variable

For example I have variable like below echo $OUTPUT /some/path/`uname -n` when I try to use the variable OUTPUT like below cd $OUTPUT or cd ${OUTPUT} I am getting bad substituion error message $ cd $OUTPUT ksh: cd: bad substitution $ cd ${OUTPUT} ksh: cd: bad substitution ... (1 Reply)
Discussion started by: rajukv
1 Replies

3. Shell Programming and Scripting

Variable Substitution

Hi , I have a variable as follows, Temp=`cat ABC.txt | cut -c5-` This will yeild a part of the date. say , 200912. I would like to substitute this variable's value in a filename. eg: File200912F.zip when i say File$TempF.zip , it is not substituting. Any help ? Thanks in... (2 Replies)
Discussion started by: mohanpadamata
2 Replies

4. Shell Programming and Scripting

variable substitution

file1.ksh #!/bin/ksh test5_create="I am a man" # test5 will be dynamic and the value will be passed from command line a=${1}_create echo $a # i need the output as "I am a man" ./file1.ksh test5 # i run the script like this any suggessions guys... (1 Reply)
Discussion started by: giri_luck
1 Replies

5. Shell Programming and Scripting

Doubt variable substitution

Hello everybody, I've written the following script: vOutputFile="subs_out.txt" vAccount1="ebsemerg" vAccount2="ebsemer2" vAccount3="ebsemer3" vAccount4="ebsemer4" vAccount5="ebsemer5" vAccount="vAccount" vNumber=1234567 cd /opt/east/bin echo ${print 'vAccount'${ind}} for (( ind =... (3 Replies)
Discussion started by: jitu.jk
3 Replies

6. UNIX for Dummies Questions & Answers

Variable substitution

Hi, That might be pretty simple. How can I generate a variable name and get their value ? Thanks a lot. Something like: >CUSTOMER_NF=26 > object=CUSTOMER > echo ${object}_NF CUSTOMER_NF > echo ${${object}_NF} ksh: ${${object}_NF}: 0403-011 The specified substitution is... (7 Replies)
Discussion started by: Leo_NN
7 Replies

7. Shell Programming and Scripting

Sed variable substitution when variable constructed of a directory path

Hello, i have another sed question.. I'm trying to do variable substition with sed and i'm running into a problem. my var1 is a string constructed like this: filename1 filerev1 filepath1 my var2 is another string constructed like this: filename2 filerev2 filepath2 when i do... (2 Replies)
Discussion started by: alrinno
2 Replies

8. Shell Programming and Scripting

Variable Substitution

I have run into a wall with my iptables firewall scripting. I am blocking all of the private side IP addresses on the WAN interface on systems running NAT. However, if the system is not running NAT and needs to allow access to the local LAN on the WAN interface, I need to block all but one of... (2 Replies)
Discussion started by: garak
2 Replies

9. UNIX for Dummies Questions & Answers

variable substitution

Hi everyone, I have a simple question to ask : In a script that I'm writting, I need to create variables on-the-fly. For instance, for every iterartion of the following loop a var_X variable should be generated : #!/bin/ksh a="1 2 3" for i in $a do var_${i}=$i echo "${var_$i}" done ... (1 Reply)
Discussion started by: ck-18
1 Replies

10. UNIX for Advanced & Expert Users

Substitution in a variable

Hey All, I'm trying to clean up a variable using sed but It dosn't seem to work. I'm trying to find all the spaces and replace them with "\ " (a slash and a space). For Example "Hello World" should become "Hello\ World". But it does nothing. If I put it directly into the command line it works... (3 Replies)
Discussion started by: spragueg
3 Replies
Login or Register to Ask a Question