unix awk scripting


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting unix awk scripting
# 1  
Old 02-14-2008
Data unix awk scripting

Hi
can anyone pls help me out in knowing how a array of elements which are fetched from database is passed to the awk program.

Something like this

#!/bin/sh

AMT[]=`sqlplus -s usrname/pswd <<EOD
set pagesize 0 feedback off verify off heading off echo on
select amount from tablename where condition;
EOD`

noofrec=`sqlplus -s usrname/pswd <<EOD
set pagesize 0 feedback off verify off heading off echo on
select count(*) from tablename where condition;
EOD`

echo "$AMT[]" $noofrec | awk '
BEGIN
{
new=$1;
printf "%d" ,new; //this works fine with 2nd argumnet but dont know how
printf the arrays values?
}

{
printf "%d" ,AMT???
}'END
# 2  
Old 02-14-2008
awk

Hi,

I am not sure why you will process like this, why not spool the sql result to a file and then process the file. This seems easy to release.

Here we can treat the spool file as the array, it should be ok for you. Just try it.

Code:
sqlplus -s ops\$global/developer@sf2a <<!
spool a.txt
select exl_name from exchange_list where rownum<=5; (your sql here)
spool off
!
while read line
do
what you want to do with the each result.
done < a.txt

# 3  
Old 02-15-2008
CPU & Memory Re

thank you for the idea,

this works fine but my reqiremnt asks for more than one data to be fetched which also works but same needs to be parsed in the awk program.

My requirement says of priting the values of each elements one by one to a file that too in a loop.


regards
Mohima
# 4  
Old 02-15-2008
How about:

echo $noofrec "${AMT[@]}"|awk '{nrec=$1;for (i=2;i<=NF;i++) {print $i;shift}}'

Smilie
# 5  
Old 02-15-2008
Re:

it works fine,

i have to print the elements of the array in the loop.Smilie

regards
Mahi
# 6  
Old 02-15-2008
No, you don't need "the loop". xargs will do that for you.

Code:
echo $noofrec "${AMT[@]}"| xargs

# 7  
Old 02-19-2008
Error need more suggestions

well it would be bit difficult to satisfy a requirement which requires something like this

#!/bin/sh

//iam reading the data for amounts from database

AMT[]=`sqlplus -s usrname/pswd <<EOD
set pagesize 0 feedback off verify off heading off echo on
select amount from tablename where condition;
EOD`

//writing to a file created at a specifed direcotry using a awk program

echo "$AMT[]" $noofrec | awk '
BEGIN
{
new=$1;
------------------------------------------------------------------
//i need to write the contents of the array in the file (which is created
at a specified location) in a loop that prints in each line contents of amount AMT[] array(as long as elements are there).

------------------------------------------------------------------
hence my problem is to print the elements in the array one by one in lines which are equivalent to no of elements in the array.

for i furthur read this file for processing

Iam able to get the contents into the array from db but couldnt print it in the file

please need suggestions asap.

Regards
Mahima
--------------------------------------------------------------------

printf "006%d" ,new; //this works fine with 2nd argumnet but dont know how
printf the arrays values?
}

{
printf "%d" ,AMT???
}'END
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

If else condition inside for loop of awk command in UNIX shell scripting

Hi , Please excuse me for opening a new thread i am unable to find out the syntax error in my if else condition inside for loop in awk command , my actual aim is to print formatted html td tag when if condition (True) having string as "failed", could anyone please advise what is the right... (2 Replies)
Discussion started by: karthikram
2 Replies

2. Shell Programming and Scripting

Need help in awk scripting

Hi I am beginner of shell/AWK scripting , can you please help me in select particular column and column between two pattern from a multiple column file. file1.txt number status date1 date2 description category ... (7 Replies)
Discussion started by: vijay_rajni
7 Replies

3. UNIX for Dummies Questions & Answers

Unix Shell Scripting( Calling from Unix to PLSQL)

Hello Experts, I have the following questions to be discussed here at this esteemed discussion forum. I have two Excel sheets which contain Unix Commands llike creating directory the structure/ftp/Copy/Zip etc to basically create an environment. I need help in understanding some of... (1 Reply)
Discussion started by: faizsaadq
1 Replies

4. Shell Programming and Scripting

Need help with awk scripting

hi all, I am working on awk scripting.I have created two awk files and now have a requirement of replacing the contents of first file with some contents of second file. Please find below the two files created.File1 has 3 records and File2 has 4 records. cat File1 111,0165,CB21031251,0165,... (3 Replies)
Discussion started by: csrohit
3 Replies

5. Shell Programming and Scripting

Help with AWK and Scripting!

Hi, This is the first time I am working with awk and I am not familiar with any commands in it. But I managed to do most of my work just left with one more. Needing your help! I have to extract only the matrix (written within ) from a text file. For example: 1JTJ_0006_ACGC_NPNP_A_12_15.pdb ... (17 Replies)
Discussion started by: SriJit
17 Replies

6. Shell Programming and Scripting

Need help with awk scripting.

Hi, i am newbie to this site and hope to learn but problem is s but need help urgently. Plz pm me if you are good at this. Help will be appreciated. (11 Replies)
Discussion started by: Rookie80
11 Replies

7. Shell Programming and Scripting

scripting/awk help : awk sum output is not comming in regular format. Pls advise.

Hi Experts, I am adding a column of numbers with awk , however not getting correct output: # awk '{sum+=$1} END {print sum}' datafile 2.15291e+06 How can I getthe output like : 2152910 Thank you.. # awk '{sum+=$1} END {print sum}' datafile 2.15079e+06 (3 Replies)
Discussion started by: rveri
3 Replies

8. Shell Programming and Scripting

Scripting via awk

Hi, I am trying to understand what is happening here, new to scripting: I have a couple of these, but if I knew what was going on in one I can figure out the rest: awk '/rpc-100083/ { $2 = "enable -r" } $3 ~ /.NOS99dtlogin/ { $t = $2; $2 = $3; $3 = $t } { print }' /var/svc/profile/upgrade... (2 Replies)
Discussion started by: ulemsee
2 Replies

9. Shell Programming and Scripting

AWK scripting

I have a text file in which the text has been divided into paragraphs (two line breaks or tab marks a new paragraph) and I want to make a script which output would delete line breaks within the paragraph and the different paragraphs would be separated by two line breaks. So, if my input file... (14 Replies)
Discussion started by: Muki101
14 Replies

10. Shell Programming and Scripting

difference between AIX shell scripting and Unix shell scripting.

please give the difference between AIX shell scripting and Unix shell scripting. (2 Replies)
Discussion started by: haroonec
2 Replies
Login or Register to Ask a Question