Beefy Boxes and Bandwidth Generously Provided by pair Networks
good chemistry is complicated,
and a little bit messy -LW

Re: How can I grab the last 2 lines of a file?

by fishmonger (Chaplain)
on Jul 26, 2014 at 23:09 UTC ( #1095185=note: print w/replies, xml ) Need Help??

in reply to How can I grab the last 2 lines of a file?

Normally, I'd suggest a pure Perl solution, such as the one AppleFritter suggested but in this case I'll suggest a mixed perl/shell solution that needs only 1 line of code.

my ($id, $name) = split {$/}, `tail -2 /path/to/file`;

Replies are listed 'Best First'.
Re^2: How can I grab the last 2 lines of a file?
by muba (Priest) on Jul 26, 2014 at 23:19 UTC

    Clever solution ++

    ... if you're on a *NIX system, or on a system that otherwise has the tail executable installed somewhere in its PATH.

      Hi Monks!
      I came across this post and it seems very helpful to a snippet of code i am trying to put together...Actually, I am interested in exactly the same thing as requested here, with the exception of removing these N (e.g. 2) lines from the file...It this possible?
        > removing these N (e.g. 2) lines from the file...It this possible?

        This it! See truncate.

        But you need to know the start of the lines to be dropped (see tell ), so the same techniques apply like described in this thread.


        Of course much easier if the length of the lines to be skipped are already known.

        Cheers Rolf

        (addicted to the Perl Programming Language and ☆☆☆☆ :)

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1095185]
[Lady_Aleena]: Corion, ouchy.
[Corion]: (maybe I should write this up as a SoPW) - currently, the "most efficient" data structure I come up with is a single array which I scan for the first fitting one-shot. Not efficient but I don't expect more than five outstanding one-shots anyway
[choroba]: can't you create a meta-key corresponding to the disjunction of the events?
[robby_dobby]: Corion: Heh. This whole thing smells of Strategy Pattern or MVC pattern.
[Corion]: And performance linear to the number of registered one-shots doesn't feel that bad. Maybe I should collect statistics on how many callbacks are outstanding ;)
[Corion]: choroba: Yes, but the longer I thought about efficient hashes mapping the event type back to their callbacks, and how to keep them in sync, the more I thought that all that optimization might just not be worth it, even if it's horribly inelegant
[Lady_Aleena]: My biggest problem with hashes at the moment is one with 2,501 keys.
[choroba]: how many event types are there?
[Corion]: Also I found that I can't conveniently weaken an array slot, which also is inconvenient, as I want my one-shots to disappear if the caller discards them
[Corion]: choroba: Currently two or three that my program handles (WWW::Mechanize:: Chrome), but there might be more that become interesting

How do I use this? | Other CB clients
Other Users?
Others musing on the Monastery: (7)
As of 2017-05-29 07:56 GMT
Find Nodes?
    Voting Booth?