Beefy Boxes and Bandwidth Generously Provided by pair Networks
Welcome to the Monastery
 
PerlMonks  

Re: multiple file operations using perl one-liners

by morgon (Priest)
on May 17, 2009 at 19:43 UTC ( [id://764545]=note: print w/replies, xml ) Need Help??


in reply to multiple file operations using perl one-liners

Am I missing something or is this far too complicated?

Why are you sorting your files when you want to process all of them anyway?

And I can't see a real reason for your "xcol" or an intermediate file, you can do all of it one go like this (-n does the looping here):

du -b */*/old.zip | perl -ne 'chomp; my $f = (split /t/)[1]; system qq +{zip -d $f "*exe*"}'

Replies are listed 'Best First'.
Re^2: multiple file operations using perl one-liners
by ikegami (Patriarch) on May 17, 2009 at 19:47 UTC
    -n + chomp can be replaced with -nl.

    That should be /\t/, I think? -a would be better than split

    du -b */*/old.zip | perl -F\\t -lane'system zip => "-d", $F[1], "*exe* +"'

    Or shorter and simpler yet:

    du -b */*/old.zip | perl -ne'system zip => "-d", /\t(.*)/, "*exe*"'

    My earlier comment on error checking still applies.

      That last one totally rocks, Ikegami!

      I always learn something when I post here.

      SSF

      -n + chomp can be replaced with -nl
      Thanks - quite useful to know.

      Gotta re-read the perlrun-manpage.

      Or:

      perl -e'system zip => -d => /\t(.*)/, "*exe*" for `du -b */*/old.zip`'

        Is there any advantage to this variant? It's longer and buggy (missing chomp). It's also less clear due the weird use of => to separate two of three arguments, especially when it's also used to associate the arguments to the command.

        Either way, I just realised du is useless.

        perl -e'system zip => "-d", $_, "*exe*" for @ARGV' */*/old.zip

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others learning in the Monastery: (6)
As of 2024-04-23 10:15 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found