05-15-2009
Dynamic variable assignment
Hi All,
I have the below scenario:
A file test.cfg with three fields>>
DATA1 DATA2 DATA3
In the script I need to assign each of the fields to variables. The number of fields will not be constant (this case we have three). Im trying to do something like this:
NUM=1
OUT_DAT_NO=3
while [ $NUM -le $OUT_DAT_NO ]
do
OUT_DAT$NUM=`cat test.cfg | awk '{print $NUM}'`
NUM=`expr $NUM + 1`
done
The output should be like this:
OUT_DAT1=DATA1
OUT_DAT2=DATA2
OUT_DAT3=DATA3
Is there any way of doing this in bash?
Thanks,
D
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
Hello Everybody,
Does anyone know what the @ symbol means in a csh script, if used with a variable assignment as below
@ line = 1
why not just use....
set line=1
Many thanks
rkap (1 Reply)
Discussion started by: rkap
1 Replies
2. Shell Programming and Scripting
Guys,
Could you please help me out. I need two values in two variables using awk from the o/p of grep.
example:-
grep sdosanjh <filename>
sdosanjh myhostname myfilename
NOW WHAT I WANT IS :-
sdosanjh should be in variable (say NAME)
myhostname should be in variable (say... (8 Replies)
Discussion started by: sdosanjh
8 Replies
3. Shell Programming and Scripting
Hi,
i have an issue with eval and variable assignment.
1) i have a date value in a variable and that date is part of a filename,
var1=20100331
file1=${var1}-D1-0092.xml.zip
file2=${var2}-D2-0092.xml.zip
file3=${var3}-D3-0092.xml.zip
i am passing the above variables to a script via... (11 Replies)
Discussion started by: mohanpadamata
11 Replies
4. Shell Programming and Scripting
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)
Discussion started by: mkarthykeyan
5 Replies
5. Shell Programming and Scripting
Hi,
In AIX I have a variable with , (coma) separated values assigned to it like shown below
var1=apple,boy,chris
i want to convert this to
var1='apple','boy','chris'
the number of values assigned to var1 might change and it could be from 1 to n
any suggestions please? (3 Replies)
Discussion started by: rahul9909
3 Replies
6. Shell Programming and Scripting
pattern1=book
{
x=1
eval echo \$pattern$x
}
book (this is the output)
But when I assign a variable to the output of the eval it doesn't work unless I prefix 2 times backslash before $ as shown below.
{
a=`eval echo \\$pattern$x`
echo $a
}
book
Why here twice "\" has to be... (3 Replies)
Discussion started by: ravisingh
3 Replies
7. Shell Programming and Scripting
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)
Discussion started by: sameermohite
3 Replies
8. Shell Programming and Scripting
Hi
I have a strange problem:
In my shell script I am performing a copy task:
. prop.txt
cp -r $dir/ $dir/archive
$dir is fetched from a property file (prop.txt) which stores its value
dir=/opt/data
Now the problem is another dir1 comes into picture. I only want to add... (1 Reply)
Discussion started by: ankur328
1 Replies
9. Shell Programming and Scripting
#!/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)
Discussion started by: JayDoshi
6 Replies
10. Shell Programming and Scripting
Hi
I am facing a problem.
export local_folder=/opt/app/
cd /opt/app/abc/
abcversion="abc*" (abcga5 is inside /opt/app/abc/)
echo $abcversion (it echoes the correct version as abcga5 )
Now when I reuse the value of abcversion for a below path:
export... (6 Replies)
Discussion started by: ankur328
6 Replies
LEARN ABOUT CENTOS
sas_disk_blink
SAS_DISK_BLINK(8) SDPARM SAS_DISK_BLINK(8)
NAME
sas_disk_blink - blink the LED on a SAS disk
SYNOPSIS
sas_disk_blink [--help] [--set NUM] [--verbose] DEVICE
DESCRIPTION
This bash shell script attempts to blink the LED on the SAS disk referred to by DEVICE. By default the LED will blink for 30 seconds. This
is meant to help identify which disk corresponds to a given DEVICE.
The script use the sdparm utility and manipulates the "Ready LED Meaning" (RLM) field in the Protocol specific port mode page in order to
blink the LED.
OPTIONS
Arguments to long options are mandatory for short options as well.
-h, --help
print out the usage message then exit.
-s, --set NUM
when NUM is 0 then the RLM field is cleared. When NUM is 1 then the RLM field is set. When NUM > 1 then the SAS disk LED is made to
blink for NUM seconds. If this option is not given then the SAS disk LED is made to blink for 30 seconds.
-v, --verbose
increase level or verbosity.
EXIT STATUS
The exit status of this script is 0 when it is successful. Otherwise the exit status is that of the last sdparm utility called. See the
sdparm(8) man page.
AUTHORS
Written by D. Gilbert
COPYRIGHT
Copyright (C) 2013 Douglas Gilbert
This software is distributed under a FreeBSD license. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PUR-
POSE.
SEE ALSO
sdparm (sdparm)
sdparm-1.08 May 2013 SAS_DISK_BLINK(8)