Class: Clean

Inherits:
Object
  • Object
show all
Defined in:
lib/sort.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeClean

Returns a new instance of Clean.



27
28
29
# File 'lib/sort.rb', line 27

def initialize
  @files_moved = 0
end

Instance Attribute Details

#files_movedObject (readonly)

Returns the value of attribute files_moved.



26
27
28
# File 'lib/sort.rb', line 26

def files_moved
  @files_moved
end

Instance Method Details

#sort(dir = './', files_older = 10) ⇒ Object



30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
# File 'lib/sort.rb', line 30

def sort(dir='./', files_older=10)
      EXTENSTIONS.each do |type,extens|
      key = type.to_s
      extens.each do |ext|
        query = dir + '*.' + ext
        Dir.glob(query) do |s|
          if File.mtime(s) < (Time.now - (files_older))
            unless s.include?("#{File.basename($0)}")
              FileUtils.mkdir_p "#{dir + key}"
              begin
                FileUtils.mv( s, "#{dir + key}/" )
                @files_moved += 1
              rescue Exception => e
                puts "couldn't move #{s}"
                puts "#{e}"
              end
            end
          end
        end
      end
    end
end