I am trying declare variables at runtime to use them for some calculation. What im doing is to try and run a bunch of sql queries in round-robbin fashion for few times. So im trying to create a different variable for each SQL file using the file name to keep track of the total time of individual queries.
Code:
for ((i=1;i<=$no_of_runs;i++))
do
ls *.sql | while read SQL_FILE
do
start=`date +%s`;
db2 -vtf $SQL_FILE > $SQL_FILE.out;
end=`date +%s`;
${SQL_FILE}_temptime=`expr $end - $start`;
${SQL_FILE}_totaltime=`expr ${SQL_FILE}_totaltime + ${SQL_FILE}_temptime`;
done
done
Now i believe this is not allowed. ${SQL_FILE}_temptime is not the way to generate/use the variable. I think the way around this problem is to use "eval". I haven't used "eval" before and im having trouble putting it to use.
Can i request someone to guide me through this problem. If i have to use eval then how can it be used in my case.
Appreciate your help.
Thanks
A
Last edited by jim mcnamara; 03-19-2013 at 09:17 AM..
Evening all,
Have been trying to create the following environment variable:
${MD_SYSTEM}_ZZ_EMAIL_SUPPORT="myname@domain.com"
However when the script that contains the above is executed it returns:
ksh: MDQA_ZZ_EMAIL_SUPPORT=myname@domain.com: not found
Is what I'm trying to do... (2 Replies)
Bit of a newbie :D with regard to unix scripting and need some advice. Hopefully someone can help with the following:
I have a predefined set of variables as follows:
AAA_IP_ADD=1.1.1.1
BBB_IP_ADD=2.2.2.2
I have a funnction call which retrieves a value into $SUPPLIER which would be... (3 Replies)
I found one post in another site with a solution for my problem
the below solution should explain what I want.
#!/bin/sh
first="one"
second="two"
third="three"
myvar="first"
echo ${!myvar}
But this gives error 'bad substitution'
System info
SunOS sundev2 5.9... (3 Replies)
Hi all,
I’m very new to UNIX programming. I have a question on dynamic variable
1. I’m having delimited file (only one row). First of all, I want to count number of columns based on delimiter. Then I want to create number of variables equal to number of fields.
Say number of... (5 Replies)
I need some variable help
TEMP1=Jane
TEMP2=Sue
X=1
eval USER=TEMP${X}
echo $USER
This gives output USER1
I would like to get Jane
I have tried
eval USER='TEMP${X}'
eval USER="TEMP${X}"
eval USER=`TEMP${X}` (3 Replies)
Hi guys.
i have a requirment as below.
I have a scripts which perform for loop
for i in /backup/logs -- it will give all the logs file
SC_RIO_RWVM_20120413064217303.LOG
SC_RIO_RWXM_20120413064225493.LOG
SC_RIO_RXXM_20120413064233273.LOG
...
do
open script.sh ---- in this file... (3 Replies)
I have a small program which needs to pass variable dynamically to form the name of a second variable whose value wil be passed on to a third variable.
***************** Program Start ******************
LOC1=/loc1
PAT1IN=/loc2
PAT2IN=/loc3
if ; then
for fpattern in `cat... (5 Replies)
My Code :
--------------------------------------------
#!/bin/bash
for i in `echo server1 server2`
do
eval ${i}_name = "apache"
echo ${i}_name
done
--------------------------------------------
Current output :
>./test.sh
./test.sh: line 5: server1_name: command not found... (3 Replies)
#!/bin/sh
if
then
echo "Insufficient number of arguments ">> error".log" ;
echo "Please check error log for more details";
exit 1 ;
else
file_name=$1".csv";
fi ;
in_par_number=`head -n1 $file_name | sed 's///g' | wc -c`
read -a arr <<< `head -n1 $file_name | sed 's// /g'`
... (6 Replies)
Hello,
I'm trying to build a small script to store a command into a dynamic variable, and I have trouble assigning the variable.
#!/bin/bash
declare -a var1array=("value1" "value2" "value3")
var1arraylength=${#var1array}
for (( i=1; i<${var1arraylength}+1; i++ ));
do
mkdir... (7 Replies)
Discussion started by: alex2005
7 Replies
LEARN ABOUT MOJAVE
variable
variable(n) Tcl Built-In Commands variable(n)
__________________________________________________________________________________________________________________________________________________NAME
variable - create and initialize a namespace variable
SYNOPSIS
variable ?name value...? name ?value?
_________________________________________________________________DESCRIPTION
This command is normally used within a namespace eval command to create one or more variables within a namespace. Each variable name is
initialized with value. The value for the last variable is optional.
If a variable name does not exist, it is created. In this case, if value is specified, it is assigned to the newly created variable. If
no value is specified, the new variable is left undefined. If the variable already exists, it is set to value if value is specified or
left unchanged if no value is given. Normally, name is unqualified (does not include the names of any containing namespaces), and the
variable is created in the current namespace. If name includes any namespace qualifiers, the variable is created in the specified names-
pace. If the variable is not defined, it will be visible to the namespace which command, but not to the info exists command.
If the variable command is executed inside a Tcl procedure, it creates local variables linked to the corresponding namespace variables (and
therefore these variables are listed by info vars.) In this way the variable command resembles the global command, although the global
command only links to variables in the global namespace. If any values are given, they are used to modify the values of the associated
namespace variables. If a namespace variable does not exist, it is created and optionally initialized.
A name argument cannot reference an element within an array. Instead, name should reference the entire array, and the initialization value
should be left off. After the variable has been declared, elements within the array can be set using ordinary set or array commands.
EXAMPLES
Create a variable in a namespace:
namespace eval foo {
variable bar 12345
}
Create an array in a namespace:
namespace eval someNS {
variable someAry
array set someAry {
someName someValue
otherName otherValue
}
}
Access variables in namespaces from a procedure:
namespace eval foo {
proc spong {} {
# Variable in this namespace
variable bar
puts "bar is $bar"
# Variable in another namespace
variable ::someNS::someAry
parray someAry
}
}
SEE ALSO
global(n), namespace(n), upvar(n)
KEYWORDS
global, namespace, procedure, variable
Tcl 8.0 variable(n)