Beefy Boxes and Bandwidth Generously Provided by pair Networks
Problems? Is your data what you think it is?
 
PerlMonks  

Perl Advent 2012-12-01: Sweet Path::Class is Coming to Town

by tobyink (Abbot)
on Dec 01, 2012 at 20:19 UTC ( #1006637=CUFP: print w/ replies, xml ) Need Help??

Today's Perl Advent is about Path::Class - definitely my favourite file/directory manipulation tool. I was disappointed to see that it didn't also mention David Golden's Path::Class::Rule.

So anyway, here's my rewrite of the script from "How can i debug compound map/grep statements just using print?" using Path::Class::Rule...

use 5.010; use strict; use warnings; use Getopt::Long qw( :config no_ignore_case ); use Path::Class::Rule; GetOptions( 'help|h' => sub { help(0) }, 'suffix=s' => \(my $suffix = ''), 'age=i' => \(my $age = 0), 'count' => \(my $count = 0), ); @ARGV or help(1); my @matches = "Path::Class::Rule" -> new -> file -> name(qr{\.$suffix$}) -> modified(">$age") -> all(@ARGV); if ($count) { say "count: ", scalar @matches; } else { say for @matches; } sub help { print <<"USAGE"; exit($_[0]); $0 --suffix=SUFFIX --age=DAYS DIR [DIR ...] $0 --suffix=SUFFIX --age=DAYS --count DIR [DIR ...] USAGE }
perl -E'sub Monkey::do{say$_,for@_,do{($monkey=[caller(0)]->[3])=~s{::}{ }and$monkey}}"Monkey say"->Monkey::do'

Comment on Perl Advent 2012-12-01: Sweet Path::Class is Coming to Town
Download Code

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: CUFP [id://1006637]
Front-paged by Arunbear
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (2)
As of 2014-11-29 10:05 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My preferred Perl binaries come from:














    Results (204 votes), past polls