Beefy Boxes and Bandwidth Generously Provided by pair Networks
Problems? Is your data what you think it is?
 
PerlMonks  

Re^2: While Loops

by tbone654 (Beadle)
on Jan 08, 2013 at 20:10 UTC ( #1012331=note: print w/replies, xml ) Need Help??


in reply to Re: While Loops
in thread While Loops

we're really guessing at what you are trying to do, so in that spirit maybe here's a real life example that has enough stuff in it to be useful on a few fronts...


test file
#ls -la > test.txt ... abreviated

-rw-r--r--  1 OQ91   Domain Users   273532 Sep 25 15:29 spy.csv.bak
-rw-r--r--  1 OQ91   Domain Users    14704 Jan  8 12:08 spy.sdf
-rw-r--r--  1 OQ91   Domain Users     4329 Oct 17 10:28 spy.sdf.bak
-rwxr-xr-x  1 OQ91   Domain Users  1196465 Sep 26 03:36 spywork.ods
-rw-r--r--  1 OQ91   Domain Users   312739 Jan  8 09:40 spyx.csv
-rwxrwxr-x  1 OQ91   Domain Users     4875 Dec 26 22:05 stone.pl
-rwxr-xr-x  1 OQ91   Domain Users     2396 Oct 25 09:57 stone.pl.121025
-rwxr-xr-x  1 OQ91   Domain Users     3375 Oct 29 10:27 stone.pl.121026
-rwxr-xr-x  1 OQ91   Domain Users     3811 Oct 29 07:52 stone.pl.121029
-rwxr-xr-x  1 OQ91   Domain Users     3809 Nov  8 11:06 stone.pl.121108
-rwxr-xr-x  1 OQ91   Domain Users 77687808 Sep 26 03:46 Taylor_Book_08.xls
-rw-r--r--  1 OQ91   Domain Users     9095 Dec 26 22:14 test15.pl
-rw-r--r--  1 OQ91   Domain Users     4350 Nov  7 01:07 test15.pl.121107
-rw-r--r--  1 OQ91   Domain Users     4424 Nov  7 11:57 test15.pl.121107a
-rw-r--r--  1 OQ91   Domain Users     8630 Nov  7 13:57 test15.pl.121107b
-rw-r--r--  1 OQ91   Domain Users     9039 Nov  8 08:59 test15.pl.121108
-rw-r--r--  1 OQ91   Domain Users     9156 Dec 26 22:10 test15.pl.121226
-rw-r--r--  1 OQ91   Domain Users    46987 Dec  4 13:25 zzz.out
$ cat test.txt | perl -l -n -e 'BEGIN {$x="OQ91";$linecount=0;$sum=0;} if((split)[2]==$x){$linecount++ ;$sum += (split)[5]; printf "%s\t %s\t\t %s\n",(split)[2],(split)[5],(split)[9]} ; END {printf "linecount: %d  Sum: %d",$linecount,$sum}'

Here's some output... abreviated

OQ91   312739     spyx.csv
OQ91   4875      stone.pl
OQ91   2396      stone.pl.121025
OQ91   3375      stone.pl.121026
OQ91   3811      stone.pl.121029
OQ91   3809      stone.pl.121108
OQ91   77687808        Taylor_Book_08.xls
OQ91   9095      test15.pl
OQ91   4350      test15.pl.121107
OQ91   4424      test15.pl.121107a
OQ91   8630      test15.pl.121107b
OQ91   9039      test15.pl.121108
OQ91   9156      test15.pl.121226
OQ91   46987      zzz.out
linecount: 61 Sum: 88200728

sums the 5th column if the tests are true, counts the lines... prints the 2nd, 5th and 9th columns, AND it's a one liner...

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1012331]
help
Chatterbox?
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others having an uproarious good time at the Monastery: (6)
As of 2017-05-28 21:38 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?