in reply to Count number of lines in a text file

Here's a one-liner inspired by some of the other solutions: $num_lines = scalar(() = ${${new IO::File "<filename"}});
  • Comment on Re: Count number of lines in a text file

Replies are listed 'Best First'.
Re^2: Count number of lines in a text file
by ajbryant59 (Initiate) on Sep 13, 2007 at 20:20 UTC
    Sorry to have to submit a retraction but the one-liner I submitted before doesn't work. I was sure I had this one working but c'est la vie. Sorry to clutter the postings.
Re^2: Count number of lines in a text file
by Anonymous Monk on Aug 14, 2009 at 16:57 UTC
    what about my($NumLines)=scalar <$Filename>
      That only works if the current line just happens to contain a number which equals the number of lines. <> in scalar context just reads a single line.

      But this works:

      perl -wE'say~~(()=<>)' yourfile
        But this works:

        So does this--but efficiently enough tha you can use it on huge files:)

        c:\test>perl -ne"}{print$." junk.out 20000001

        It actually beats wc -l on my system.


        Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
        "Science is about questioning the status quo. Questioning authority".
        In the absence of evidence, opinion is indistinguishable from prejudice.