Solved

how to count the row amount of a file and get header and footer with empty  row in unix script

Posted on 2011-09-07
5
2,013 Views
Last Modified: 2012-05-12
There is 1 file FILE.txt , use unix script to get the header and footer rows, count the row amount except header and footer

fdfasdaAggpotrt
1204 500 5 435 46509 65 90650
5409tq09 wtr9w0yt90w009re9tr
vbfdfdbgb002istgj ojoi
(empty row)
(empty row)

i) There maybe is empty row after the footer
ii)check the header 8 position must be "A"
iii)check the footer 10-13 value must equal the row count amount of the file except the header and footer

issue;
head -n 1 FILE.txt  , can get the header
but tail -n 1 FILE.txt can NOT get the correct footer

any advice ?

thanks
0
Comment
Question by:SayYou_SayMe
  • 3
  • 2
5 Comments
 
LVL 38

Expert Comment

by:wesly_chen
ID: 36500561
footer:
grep -v '^$' FILE.txt | tail -1

Count row (included header and footer)
grep -v '^$' FILE.txt  | wc  -l
   The number subtract  2 will be the number you want.
expr  `grep -v '^$' FILE.txt  | wc  -l`  -  2
0
 

Author Comment

by:SayYou_SayMe
ID: 36506618
thanks Wesly_chen

grep -v '^$' FILE.txt | tail -1

can not get the last row, it still get the emty row
0
 
LVL 38

Accepted Solution

by:
wesly_chen earned 500 total points
ID: 36506650
grep -v '^[ ]*$' FILE.txt | tail -1    
   There is space in [ ]
0
 

Author Comment

by:SayYou_SayMe
ID: 36507201
thanks wesly_chen

it seems working

i) how to get the header 8 position charector
ii)how to get the footer 10-13
0
 
LVL 38

Assisted Solution

by:wesly_chen
wesly_chen earned 500 total points
ID: 36507386
head -n 1 FILE.txt  |  awk '/???????A/ {print "Good header"}'

grep -v '^[ ]*$' FILE.txt | tail -1  | perl -ne 'print "$1\n" if /.{9}(\d{3})/;'
or
grep -v '^[ ]*$' FILE.txt | tail -1  | perl -ne 'print "footer\n" if /.{9}(\d{3})/;'
0

Featured Post

Announcing the Most Valuable Experts of 2016

MVEs are more concerned with the satisfaction of those they help than with the considerable points they can earn. They are the types of people you feel privileged to call colleagues. Join us in honoring this amazing group of Experts.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

How to remove superseded packages in windows w60 or w61 installation media (.wim) or online system to prevent unnecessary space. w60 means Windows Vista or Windows Server 2008. w61 means Windows 7 or Windows Server 2008 R2. There are various …
Utilizing an array to gracefully append to a list of EmailAddresses
Learn several ways to interact with files and get file information from the bash shell. ls lists the contents of a directory: Using the -a flag displays hidden files: Using the -l flag formats the output in a long list: The file command gives us mor…
This Micro Tutorial will teach you how to censor certain areas of your screen. The example in this video will show a little boy's face being blurred. This will be demonstrated using Adobe Premiere Pro CS6.

816 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

7 Experts available now in Live!

Get 1:1 Help Now