Better way to kill files?

Purpose here is to find all files > 5 hours old in a directory and wipe
them…

Of course I could just write a shell script but I wanted to leverage
ruby…or, rather, needed to leverage ruby…not real familiar with the
File and FileUtils API just yet…

dir_path = “~/foo/bar”

Dir.new(dir_path).each {|file|
if file.include?(‘foobar’)
afile = File.new("#{dir_path}/#{file}")

if (Time.now - afile.mtime)/60/60 > 5
  File.delete("#{dir_path}/#{file}")
end

end
}

On 10/13/07, Cory W. [email protected] wrote:

Purpose here is to find all files > 5 hours old in a directory and wipe
them…

Of course I could just write a shell script but I wanted to leverage
ruby…or, rather, needed to leverage ruby…

Not to discourage you from doing it in ruby, but you don’t need to
write a shell script:

$man find

$find ~/foo/bar -mmin 300 -delete


Rick DeNatale

My blog on Ruby
http://talklikeaduck.denhaven2.com/

On Oct 13, 1:53 pm, “Rick DeNatale” [email protected] wrote:

$man find

$find ~/foo/bar -mmin 300 -delete

ruby -e ‘find ~/foo/bar -mmin 300 -delete

In case the boss says it has to be Ruby :slight_smile:

On Oct 13, 2007, at 1:10 PM, Brian A. wrote:

Not to discourage you from doing it in ruby, but you don’t need to

Of course you might want to generate a log of what got deleted.
Or perhaps just to stdout…
Then again, you might even want to do that and move them to a temp
dir for later deletion if they’re not important.
Definitely want a log of anything that fit the requirements but was
unable to delete!