4 Feb Peteris Krumins has a new book, Perl One-Liners Explained. His new book is in the same style as his previous books on awk and sed. the gnarly Perl one-liner for accomplishing short tasks that do not need a complete The -e switch allows me to write Perl scripts directly on the command line. Perl One-liners. Perl one-liners are small and awesome Perl programs that fit in a . I explain this example in detail in one-liner (page 41), but basically you.

Author: Nikonris Sam
Country: Qatar
Language: English (Spanish)
Genre: Video
Published (Last): 22 January 2017
Pages: 459
PDF File Size: 15.56 Mb
ePub File Size: 1.75 Mb
ISBN: 551-8-53676-900-5
Downloads: 53899
Price: Free* [*Free Regsitration Required]
Uploader: Nalrajas

And here is a dirty Perl joke. The sneaky part is the ordering of the flags: Perl Programming 26 Comments February 01, Do you have any recommendation on books or online sites for learning about the more advanced topics you mention above the many Unix topics that you say ps gives info on, not just ps itself? I am now fixing that mistake.

The article will be divided in seven parts or more parts. The “unless” means “if not”. See all top articles. The perl program runs on every line making the edit. See perlop for details. The -print0 argument to find and xargs -0 will work even if files have spaces in their name, unlike the first case.

How would I create a one liner to print all lines in a text file that DON’T contain the word “water” unless the line also contains the word “plants”?


For a non-printing loop, remove the print statement. See more detailed category information.

How to Make Perl Regex One-Liners

Please take a look:. For more information on shell commands, see my shell tips page.

Practical uses include omitting lines matching a regular expression, or removing the first line from a file. Experiment with these to practice the expressions; otherwise, make backups in the event an expression runs amok.

I wish Perl would do an inplace explwined of a file without creating a backup, though.

Perl One-Liners Explained

Not that there aren’t any programs that can do the same thing, they can; but they’re clumsy, unstable, require much more work on my part than a simple perl script and they are always incomplete they do ALMOST exactly what you need, with perl scripts you make it do EXACTLY what you need.

Combining the flip-flop operator with print peel makes it print only lines If there are any chars left, it evals to true and the line gets printed.

The “-l” automatically chomps the input line basically gets rid of newline at the end. That said, sed is simpler, sometimes less to type, sometimes there on systems where perl isn’t though that seems uncommon these days. I’ve yet to find anything more powerful for batch file processing than a perl shell; and as a Windows user, I recommend strawberry perl portable; I can take it to all my clients and impress everyone with how quickly I can fix all the scripts that need simple changes.

TOP Related Posts  EAACK PDF

Sometimes I want to send a private message, or just thank for the great comment. It was faster than Googling. And I actually think Perl is correct here and you should only need to escape those characters if you want literal matchesbut I have a weird environment One-lines and it’s possible the sed build there is a little messed up.

Article series “Perl One-Liners Explained” – good coders code, great reuse

Peter, Great perl codes. When perl exits, cleanly or not, the original file is unlinked.

How do you make your plan when first started. I just bought the first item on your list, PCM, but to myself: For serious stuff I include real CSV libraries in the one liner to quote correctly etc.

I have written my fourth book!

The expression 42 does nothing; these examples show the default behavior, and how to enable printing with a -nle.

Also consider the book Minimal Perl by Tim Maherwhich covers one liner style Perl in great detail.

I was a bit surprised to see the amount of one-linwrs in the toolchain commands and flags command-line options across the tools on all those Unixes. It’s best if you moved to writing Perl programs at this point rather than one-liners. Peter Krumins pkrumins Permalink.