Beefy Boxes and Bandwidth Generously Provided by pair Networks
Think about Loose Coupling
 
PerlMonks  

Re^4: How to write a program to read stdin or command line?

by ikegami (Pope)
on Oct 03, 2007 at 05:40 UTC ( #642305=note: print w/ replies, xml ) Need Help??


in reply to Re^3: How to write a program to read stdin or command line?
in thread How to write a program to read stdin or command line?

Assuming I was talking about the general case, how is -p less flexible? And how does -l matter?

perl -nle "print bar($_) unless foo($_)"
perl -ple "next if foo($_); $_=bar($_)"


Comment on Re^4: How to write a program to read stdin or command line?
Select or Download Code
Re^5: How to write a program to read stdin or command line? (-p next)
by tye (Cardinal) on Oct 03, 2007 at 05:47 UTC

    perl -ple "next" still prints every line, so, yes, -p is less flexible based on your fine examples.

    If you want to omit some lines from the output, you can't do that if you are also using -l

    My first reaction to that is that the final -l was supposed to be a -p. That would certainly make sense to me, but I can't say for sure that it is what was intended.

    - tye        

Re^5: How to write a program to read stdin or command line?
by BrowserUk (Pope) on Oct 03, 2007 at 11:00 UTC

    With -p, whilst you can conditionally undef $_ to avoid it being printed; if you are also using -l, you will get unwanted blank lines:

    C:\test>type junk.txt 1 2 3 4 5 C:\test>perl -nle"$_ & 1 and print" junk.txt 1 3 5 C:\test>perl -ple"$_ & 1 or undef $_ and next" junk.txt 1 3 5

    And in fact the next in your example serves no purpose:

    C:\test>perl -ple"$_ & 1 or undef $_" junk.txt 1 3 5

    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.
      Yeah, I was confused, sorry.

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others lurking in the Monastery: (5)
As of 2014-07-12 12:51 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    When choosing user names for websites, I prefer to use:








    Results (239 votes), past polls