The UNIX and Linux Forums  

Go Back   The UNIX and Linux Forums > Top Forums > Shell Programming and Scripting
Google UNIX.COM


Shell Programming and Scripting Post questions about KSH, CSH, SH, BASH, PERL, PHP, SED, AWK and OTHER shell scripts here.

More UNIX and Linux Forum Topics You Might Find Helpful
Thread Thread Starter Forum Replies Last Post
flexible sed command needed to handle multiple input types SiftinDotCom Shell Programming and Scripting 2 03-19-2008 12:39 PM
Handle Configuration File with same name of Parameter in multiple Sections potro Shell Programming and Scripting 7 03-05-2008 07:36 AM
a bit tricky to change it multiple rows in one row and ... netbanker Shell Programming and Scripting 2 12-31-2007 09:48 PM
How to handle the Multiple Rows in the Database hsekol Shell Programming and Scripting 2 03-05-2007 04:51 AM
NFS file handle kazimir UNIX for Advanced & Expert Users 2 07-24-2002 09:11 AM

Reply
 
Submit Tools LinkBack Thread Tools Display Modes
  #1 (permalink)  
Old 05-09-2008
Registered User
 

Join Date: Apr 2008
Location: Bangalore
Posts: 14
Stumble this Post!
How to handle multiple rows in a file

I have a FILE a.txt which has the following data

113901.94,113901.94,56950.97,56950.97,NOT MATCHING,NOT MATCHING
10693.04,10693.04,5346.52,5346.52,NOT MATCHING,NOT MATCHING
1901.94,1901.94,550.97,550.97,NOT MATCHING,NOT MATCHING
103.04,103.04,53.52,53.52,NOT MATCHING,NOT MATCHING

#### This IS my Code ####

RECIPIENT="xyz@mail.com"
FILE_PATH=/path/
cd $FILE_PATH
FILE=a.txt
chmod 777 $FILE

tgt_dr=`cat a.txt | awk -F',' '{print $1}' $FILE`
tgt_cr=`cat a.txt | awk -F',' '{print $2}' $FILE`

src_dr=`cat a.txt | awk -F',' '{print $3}' $FILE`
src_cr=`cat a.txt | awk -F',' '{print $4}' $FILE`

### Comparing for the Credit Amount

if [ -s $FILE ]
then

if [ $src_cr -eq $tgt_cr ]
then
exit 0
else
(echo "Hi All,


The sum of credit amount : $src_cr
The sum of credit amount : $tgt_cr


Thanks
user_name" )|mailx -s "`date '+%d-%m-%y'` Credit Amount" $RECIPIENT
fi
else
exit 0
fi

### Comparing for the Debit Amount

if [ -s $FILE ]
then
if [ $src_dr -eq $tgt_dr ]
then
exit 0
else
(echo "Hi All,

The sum of debit amount : $src_dr
The sum of debit amount : $tgt_dr


Thanks
User_name" )|mailx -s "`date '+%d-%m-%y'` Debit Amount" $RECIPIENT
fi
else
exit 0
fi

as of now my program handle only one row. pl let me know how to achieve this in looping if i have
multiple lines in the a.txt file

Thanks
Babu
Reply With Quote
Forum Sponsor
  #2 (permalink)  
Old 05-09-2008
...@...
 

Join Date: Feb 2004
Location: NM
Posts: 3,795
Stumble this Post!
This compares the whole file, writes all the credit problems to one file, all the debit problems to another, then sends all of the common problems in one email.
Code:
awk -F','   '{ if($1 != $3 ) {print $1, $3 > "debitfile"}
                  if($2 != $4 ) { print $2, $4 > "creditfile" }
                } ' a.txt
$(echo "Hi All,
`awk '{ printf( "The sum of credit amount :%10f   The sum of credit amount :%10f\n", $1, $2) creditfile`

Thanks
user_name" )|mailx -s "`date '+%d-%m-%y'` Debit Amount" $RECIPIENT
$(echo "Hi All,
`awk '{ printf( "The sum of debit amount :%10f   The sum of debit amount :%10f\n", $1, $2) debitfile`

Thanks
user_name" )|mailx -s "`date '+%d-%m-%y'` Debit Amount" $RECIPIENT
Reply With Quote
  #3 (permalink)  
Old 05-14-2008
Registered User
 

Join Date: Apr 2008
Location: Bangalore
Posts: 14
Stumble this Post!
Hi

The above solutions is fine if I have only four lines. I am not sure how many lines will be created in the output a.txt.

Pl let me know how to handle in looping
Reply With Quote
Google The UNIX and Linux Forums
Reply

Thread Tools
Display Modes




All times are GMT -7. The time now is 05:48 PM.


Powered by: vBulletin, Copyright ©2000 - 2006, Jelsoft Enterprises Limited.
The UNIX and Linux Forums Content Copyright ©1993-2008 The CEP Blog All Rights Reserved -Ad Management by RedTyger Visit The Global Fact Book

Content Relevant URLs by vBSEO 3.2.0