http://qs1969.pair.com?node_id=470405


in reply to Favourite One-liners?

I think the first I learned was: perl -pe 0 "filename". Rather trivial, but it took a bit of thought to understand what the "0" was.
For illustrating the power of Perl, I like perl-MLWP::Simple -e "print get(shift)" http://www.perlmonks.org
chas
(Those are for Win; Single quotes may be better on *nix.)

Replies are listed 'Best First'.
Re^2: Favourite One-liners?
by epoptai (Curate) on Jun 28, 2005 at 19:47 UTC
    FYI LWP::Simple can get and print with one command:
    perl -MLWP::Simple -e "getprint 'http://www.perlmonks.org'"
    Here's a webserver, from the IO::All docs:
    perl -MIO::All -e 'io(":8080")->fork->accept->(sub { $_[0] < io(-x $1 +? "./$1 |" : $1) if /^GET \/(.*) / })'

    --
    perl -MO=Deparse -e"u j t S n a t o e h r , e p l r a h k c r e"

      One line web server? Way cool.

      A couple of years ago I went back to uni for a network communication class I failed once. After completing the lab assignment of writing a "time-of-day" server in C, I showed the lab instructor the equivalent perl code (one-liner). He thought it was pretty cool (I know, the lab goal is not the end result, but the methods you use to get there, but still..)

      Had I known about IO::All and one-line web servers at the time, I might have gotten extra points on the lab assignment :)

Re^2: Favourite One-liners?
by ikegami (Patriarch) on Jun 28, 2005 at 18:40 UTC
    If you're using ActiveState, just do
    GET http://www.perlmonks.org/
      Er, what does using activestate have to do with the ability to execute the GET program (which comes with LWP) ?
        Simple. It guarantees that he can use GET. I didn't say he couldn't if he didn't have ActiveState. He possibly can. He possibly can't. It depends on whether he installed GET when he installed LWP.