Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris

Comment on

( #3333=superdoc: print w/replies, xml ) Need Help??
Try this for your summing code:
use Modern::Perl; my $sum_of_used; { no warnings qw/numeric uninitialized/; $sum_of_used += (split /\s+/)[2] while <DATA>; } say $sum_of_used; __DATA__ <df -k> Filesystem total used avail capacity Mounted + on /vol/vol0/ 142606336KB 5274244KB 137332092KB 4% /vol/v +ol0/ /vol/vol0/.snapshot 35651584KB 923524KB 34728060KB 3% /vol/vo +l0/.snapshot /vol/vobstore/ 734003200KB 6335232KB 727667968KB 1% /vol/ +vobstore/ /vol/vobstore/.snapshot 183500800KB 260200KB 183240600KB 0% / +vol/vobstore/.snapshot /vol/ccase/ 125829120KB 21814420KB 104014700KB 17% /vol/ +ccase/ /vol/ccase/.snapshot 31457280KB 90572KB 31366708KB 0% /vol/c +case/.snapshot /vol/viewstore/ 943718400KB 6492604KB 937225796KB 1% /vol/ +viewstore/ /vol/viewstore/.snapshot 235929600KB 137500KB 235792100KB 0% +/vol/viewstore/.snapshot /vol/viewstore_win/ 67108864KB 480KB 67108384KB 0% /vol/vi +ewstore_win/ /vol/viewstore_win/.snapshot 16777216KB 2372KB 16774844KB 0% + /vol/viewstore_win/.snapshot </df -k>
It can be so simple because Perl knows how to make a number out of "almost" numbers. In other words, Perl simply disregards the 'KB' which is attached to the number. Everything which does not contain numbers will become 0, such as the header line. A perfect example of Perlish "Do What I Mean".

Of course I had to switch of the "not numeric" and "not initialized" warnings, but that is OK if you know what you are doing.


A program should be light and agile, its subroutines connected like a string of pearls. The spirit and intent of the program should be retained throughout. There should be neither too little or too much, neither needless loops nor useless variables, neither lack of structure nor overwhelming rigidity." - The Tao of Programming, 4.1 - Geoffrey James

My blog: Imperial Deltronics

In reply to Re^3: sumof - attempting to sum a column from each file by CountZero
in thread sumof - attempting to sum a column from each file by ricky5ive

Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post; it's "PerlMonks-approved HTML":

  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.
  • Log In?

    What's my password?
    Create A New User
    [shmem]: hm. Can't resolve - weird.
    [shmem]: ns{1,2,3} unreachable and no caching. -.-
    [karlgoethebier]: funny that they call it Big Dipper in the US. Here this part of Ursa Major is called "Großer Wagen" Big wagon...or car as you like ;-)

    How do I use this? | Other CB clients
    Other Users?
    Others musing on the Monastery: (6)
    As of 2017-11-21 18:05 GMT
    Find Nodes?
      Voting Booth?
      In order to be able to say "I know Perl", you must have:

      Results (308 votes). Check out past polls.