The UNIX and Linux Forums  
Hello and Welcome from United States to the UNIX and Linux Forums! Thank You for Visiting and Joining Our Global Community.

Go Back   The UNIX and Linux Forums > Top Forums > UNIX for Dummies Questions & Answers
.
google unix.com



UNIX for Dummies Questions & Answers If you're not sure where to post a UNIX or Linux question, post it here. All UNIX and Linux newbies welcome !!

More UNIX and Linux Forum Topics You Might Find Helpful
Thread Thread Starter Forum Replies Last Post
help me in sending parameters from sqlplus script to unix shell script Hara Shell Programming and Scripting 2 01-29-2008 03:31 PM
Shell Script: want to insert values in database when update script runs ring Shell Programming and Scripting 1 10-25-2007 03:06 AM
here document to automate perl script that call script hogger84 Shell Programming and Scripting 3 10-22-2007 10:15 AM
returning to the parent shell after invoking a script within a script gurukottur Shell Programming and Scripting 5 09-26-2006 07:05 AM
return valuse from child script to parent script borncrazy Shell Programming and Scripting 1 08-20-2004 03:39 PM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Search this Thread Rate Thread Display Modes
  #1 (permalink)  
Old 11-01-2006
wereyou wereyou is offline
Registered User
  
 

Join Date: Sep 2006
Posts: 19
Script help

I am running this script and it keeps report a count of 6 less than what is manually totaled. How can I make the script -6 or give an accurate count of what the number is when manually added?

$CONMAN sj HCSCPROD@#@.@ > $MYHOME/hcscprod_job_totals
$CONMAN sj HCNCPROD@#@.@ > $MYHOME/hcncprod_job_totals
$CONMAN sj KTAZP@#@.@ > $MYHOME/ktazp_job_totals
$CONMAN sj KTAZD@#@.@ > $MYHOME/ktazd_job_totals
$CONMAN sj KTAZI@#@.@ > $MYHOME/ktazi_job_totals
$CONMAN sj KTAZQ@#@.@ > $MYHOME/ktazq_job_totals
cat $MYHOME/hcscprod_job_totals | wc -l > no_file
cat $MYHOME/hcncprod_job_totals | wc -l >> no_file
cat $MYHOME/ktazp_job_totals | wc -l >> no_file
cat $MYHOME/ktazd_job_totals | wc -l >> no_file
cat $MYHOME/ktazi_job_totals |wc -l >> no_file
cat $MYHOME/ktazq_job_totals |wc -l >> no_file
print "hcscprod_job_totals" >> $MYHOME/hcscprod_job_totals | more $MYHOME/hcscp
rod_job_totals|wc -l "hcscprod_job_totals"
print "hcncprod_job_totals" >> $MYHOME/hcncprod_job_totals | more $MYHOME/hcncp
rod_job_totals |wc -l "hcncprod_job_totals"
print "ktazp_job_totals" >> $MYHOME/ktazp_job_totals |more $MYHOME/ktazp_job_tot
als |wc -l "ktazp_job_totals"
print "ktazd_job_totals" >> $MYHOME/ktazd_job_totals | more $MYHOME/ktazd_job_to
tals|wc -l "ktazd_job_totals"
print "ktazi_job_totals" >> $MYHOME/ktazi_job_totals | more $MYHOME/ktazi_job_to
tals|wc -l "ktazi_job_totals"
print "ktazq_job_totals" >> $MYHOME/ktazq_job_totals | more $MYHOME/ktazq_job_to
tals|wc -l "ktazq_job_totals"
awk ' {for (i=1; i<=NF; i++) s=s+$i} ; END {print s} ' no_file



3240 hcscprod_job_totals
1781 hcncprod_job_totals
5421 ktazp_job_totals
4792 ktazd_job_totals
1367 ktazi_job_totals
28 ktazq_job_totals
16623
  #2 (permalink)  
Old 11-01-2006
Perderabo's Avatar
Perderabo Perderabo is offline Forum Staff  
Unix Daemon
  
 

Join Date: Aug 2001
Location: Ashburn, Virginia
Posts: 9,116
You are counting the lines in a file. Then you add a line. Then you display the new count. Then you add up the old counts.

Code:
$ echo "one
> two
> three" > file
$ cat file
one
two
three
$ cat file | wc -l
       3
$ print "extra total line that the above wc missed somehow"  >> file  | more file | wc -l
       4
Counting the lines in a file twice will slow you down at best. It is really bad that you recount after adding a line. And look at that pipeline. It doesn't make sense. The print statement is redirected to a file so it has nothing to feed into "more". And "more" will open a file in this case and ignore stdin anyway.

Rather than "cat file | wc -l", use just:
wc -l < file
By redirecting the input, the shell opens the file rather than wc opening the file. So wc will not display the filename. Try to do this once and use the same count in both places.
Closed Thread

Bookmarks

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On




All times are GMT -4. The time now is 04:44 PM.


Powered by: vBulletin, Copyright ©2000 - 2006, Jelsoft Enterprises Limited. Language Translations Powered by .
vBCredits v1.4 Copyright ©2007 - 2008, PixelFX Studios
The UNIX and Linux Forums Content Copyright ©1993-2009. All Rights Reserved.Ad Management by RedTyger

Content Relevant URLs by vBSEO 3.2.0