Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw
 
PerlMonks  

Re: a one-liner for this trivial problem?

by NetWallah (Abbot)
on Apr 16, 2013 at 23:35 UTC ( #1029027=note: print w/ replies, xml ) Need Help??


in reply to a one-liner for this trivial problem?

How about this:

perl -ne "$small||=$ARGV; $small eq $ARGV? $h{$_}++: $h{$_}?0:print" s +mall.txt large.txt
This takes advantage of the fact that $ARGV contains the file name.

Use single-quotes if you run in *nix.

             "I'm fairly sure if they took porn off the Internet, there'd only be one website left, and it'd be called 'Bring Back the Porn!'"
        -- Dr. Cox, Scrubs


Comment on Re: a one-liner for this trivial problem?
Download Code
Re^2: a one-liner for this trivial problem?
by space_monk (Chaplain) on Apr 17, 2013 at 04:22 UTC

    Good idea, but removing the hard coding of file names perhaps gives....

    perl -ne " $ARGV eq $ARGV[0] ? $h{$_}++ : $h{$_} ? 0 : print; " small.txt large.txt
    A Monk aims to give answers to those who have none, and to learn from those who know more.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1029027]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others browsing the Monastery: (5)
As of 2014-08-22 06:37 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The best computer themed movie is:











    Results (148 votes), past polls