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!

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs