roto 0.1.5 → 0.1.6
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/roto.rb +14 -9
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 88fd2c9c37d8b8344d2e6deab5fe6ce0f23839e1
|
4
|
+
data.tar.gz: 3859b26fb91fc240ff64407ccf02e5d27bf4b3ab
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 472419a1f8ebf52e3964a2f5fd64973bdeeb70f145ea4069caeea8902a57a28d0449ac16fbc056e91793fda4ef848b00d15c6e1ecb891fdd09a9ece08012eff8
|
7
|
+
data.tar.gz: a1e649ea8a082c6ecd1727d7706b2fa7cf4c26654345a1666124dc1e9b49438b0971b27f87e4e9f929327f3e69288228673e9d52f418316823f2de4cc588fac0
|
data/lib/roto.rb
CHANGED
@@ -1,30 +1,33 @@
|
|
1
1
|
require 'fileutils'
|
2
2
|
require 'find'
|
3
3
|
require 'ruby-progressbar'
|
4
|
+
require 'logger'
|
4
5
|
|
5
6
|
class Roto
|
6
|
-
attr_accessor :types, :files, :
|
7
|
-
attr_reader :
|
7
|
+
attr_accessor :types, :files, :rename_duplicates
|
8
|
+
attr_reader :errors
|
8
9
|
|
9
10
|
def initialize
|
10
11
|
@files = []
|
11
12
|
@types = ['.mp4', '.mov', '.jpg', '.png', '.mts']
|
12
13
|
@rename_duplicates = true
|
13
14
|
@errors = {}
|
15
|
+
@logger = Logger.new(STDOUT)
|
14
16
|
end
|
15
17
|
|
16
18
|
def find_files(path)
|
17
|
-
progressbar = ProgressBar.create(:
|
19
|
+
progressbar = ProgressBar.create(total: nil, format: "%a Finding Files")
|
18
20
|
Find.find(path).each do |file|
|
19
21
|
if @types.include?(File.extname(file).downcase)
|
20
22
|
@files << file
|
21
23
|
progressbar.increment
|
22
24
|
end
|
23
25
|
end
|
26
|
+
@logger.info("Found: #{@files.count} files")
|
24
27
|
end
|
25
28
|
|
26
29
|
def move_files(destination)
|
27
|
-
progressbar = ProgressBar.create(total: @files.count, format: '%
|
30
|
+
progressbar = ProgressBar.create(total: @files.count, format: '%a %B %p%% %t')
|
28
31
|
@files.each do |file|
|
29
32
|
filename = File.basename(file)
|
30
33
|
ext = File.extname(file)
|
@@ -33,17 +36,18 @@ class Roto
|
|
33
36
|
if File.exist?("#{destination}/#{filename}") && @rename_duplicates
|
34
37
|
FileUtils.mv("#{file}", "#{destination}/#{name}_#{Time.now.to_i}#{ext}")
|
35
38
|
else
|
36
|
-
|
37
|
-
|
39
|
+
FileUtils.mv("#{file}", "#{destination}")
|
40
|
+
end
|
38
41
|
progressbar.increment
|
39
42
|
rescue => error
|
40
43
|
@errors[file] = error
|
41
44
|
end
|
42
|
-
|
45
|
+
end
|
46
|
+
self
|
43
47
|
end
|
44
48
|
|
45
49
|
def copy_files(destination)
|
46
|
-
progressbar = ProgressBar.create(total: @files.count, format: '%
|
50
|
+
progressbar = ProgressBar.create(total: @files.count, format: '%a %B %p%% %t')
|
47
51
|
@files.each do |file|
|
48
52
|
filename = File.basename(file)
|
49
53
|
ext = File.extname(file)
|
@@ -58,6 +62,7 @@ class Roto
|
|
58
62
|
rescue => error
|
59
63
|
@errors[file] = error
|
60
64
|
end
|
61
|
-
|
65
|
+
end
|
62
66
|
end
|
67
|
+
self
|
63
68
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: roto
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Andrew Cottage
|
@@ -53,7 +53,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
53
53
|
version: '0'
|
54
54
|
requirements: []
|
55
55
|
rubyforge_project:
|
56
|
-
rubygems_version: 2.
|
56
|
+
rubygems_version: 2.5.1
|
57
57
|
signing_key:
|
58
58
|
specification_version: 4
|
59
59
|
summary: Roto the Ruby Photo Finder!
|