Beefy Boxes and Bandwidth Generously Provided by pair Networks
XP is just a number
 
PerlMonks  

Re^2: Temporary file management in Perl -- is it possible?

by taint (Chaplain)
on Apr 24, 2013 at 23:43 UTC ( #1030551=note: print w/ replies, xml ) Need Help??


in reply to Re: Temporary file management in Perl -- is it possible?
in thread Temporary file management in Perl -- is it possible?

Greetings mbethke, and thank you for the reply.
I looked at File::Temp. But if I'm not mistaken, it creates an (altho temporary) actual copy of the file.
While this wouldn't be the "end of the earth" for me, these files are ~150Mb each.
Copy time, and space seems less efficient than using a symlink. Which is why I chose that direction.
Maybe kennethk's suggestion solves this. Then again, perhaps initiating a check at the beginning of
this script, similar to:

#!/bin/sh - find . -type f -name '*.tbz2' -maxdepth 1 -cmin '+24' | xargs rm exit
would be nearly good enough.
OK, the above is a shell script, and while I could "shell out" within Perl.
I'm sure there must be a way do do the same whithin Perl. :)

Thanks again for taking the time to respond!

--chris

#!/usr/bin/perl -Tw
use perl::always;
my $perl_version = "5.12.4";
print $perl_version;


Comment on Re^2: Temporary file management in Perl -- is it possible?
Download Code
Re^3: Temporary file management in Perl -- is it possible?
by kennethk (Monsignor) on Apr 25, 2013 at 14:48 UTC
    If you want to do a clean-up first, you could invoke system at the start of your script:
    system(q{find . -type f -name '*.tbz2' -maxdepth 1 -cmin '+24' | xargs + rm})
    You can also invoke all necessary commands in Perl
    opendir my $dh, '.'; for (readdir $dh) { unlink if -l and /\.tbz2$/ and 24 * 60 * -M > 10; }
    See -X.

    #11929 First ask yourself `How would I do this without a computer?' Then have the computer do it the same way.

      Greetings kennethk, and thank you for taking the time to provide this solution!
      That's exactly what I was thinking. But, while having read -X, still hadn't figured out how to accomplish it in Perl.
      Thanks, again. I really appreciate it.

      --chris

      #!/usr/bin/perl -Tw
      use perl::always;
      my $perl_version = "5.12.4";
      print $perl_version;

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others surveying the Monastery: (7)
As of 2014-10-25 19:55 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    For retirement, I am banking on:










    Results (148 votes), past polls