itools 0.2.3 → 0.2.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/lib/itools/get_size.rb +31 -6
- data/lib/itools/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9767a4dc31da86dba35eb36ff7c140518af6339eb176818520d7ee0aa51fd12a
|
4
|
+
data.tar.gz: 4b0caef476cc596ae88813158e3a3a89a2c2410dd976fee46ae4ba3191dc2da9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d12af5520c72c8bb3067686e14726581cab1a30630ea0c96d45d0bbe29effa4ecf97b9701f67e82e002ededa7aee719105ae46b83c94f65d05cd413c73dc88dd
|
7
|
+
data.tar.gz: cbd77f0e21354edc97de7e707dffd84a03be636600053de5897e6751c82602de5ce01dbc13f6b97d21cf033bff5de15e25c151d07f8baa84427ee66cfbdd1506
|
data/Gemfile.lock
CHANGED
data/lib/itools/get_size.rb
CHANGED
@@ -30,25 +30,50 @@ module Itools
|
|
30
30
|
end
|
31
31
|
# 计算整个文件夹
|
32
32
|
def cal_folder(folder)
|
33
|
+
print "\033[32m请输入要查找文件后缀\033[0m(例如想文件夹中图片大小则输入:{png,jpg,gif},不输入则默认计算文件夹下所有文件大小之和):"
|
34
|
+
file_exts_string = STDIN.gets
|
35
|
+
file_exts_string.chomp! #过滤换行符
|
36
|
+
if file_exts_string.size == 0
|
37
|
+
file_exts = []
|
38
|
+
else
|
39
|
+
file_exts = file_exts_string.split(",")
|
40
|
+
end
|
33
41
|
sum = 0
|
34
42
|
file_count = 0
|
43
|
+
total_count = 0
|
44
|
+
total_size = 0
|
35
45
|
Find.find(folder) do |filename|
|
36
46
|
if File.file?(filename)
|
37
|
-
|
38
|
-
|
39
|
-
|
47
|
+
total_count = total_count + 1
|
48
|
+
total_size = total_size + File.size(filename)
|
49
|
+
if file_exts.size == 0 #说明计算所有文件
|
50
|
+
sum = sum + File.size(filename)
|
51
|
+
file_count = file_count + 1
|
52
|
+
elsif file_exts.include?(File.extname(filename).delete(".")) #查找指定后缀的文件
|
53
|
+
sum = sum + File.size(filename)
|
54
|
+
file_count = file_count + 1
|
55
|
+
else
|
56
|
+
#不做任何处理
|
57
|
+
end
|
40
58
|
end
|
41
59
|
end
|
42
|
-
|
60
|
+
if file_exts.size == 0
|
61
|
+
puts "\033[32m文件夹中共#{total_count}个文件,共#{get_show_size(total_size)}\033[0m"
|
62
|
+
else
|
63
|
+
puts "\033[32m文件夹中共#{total_count}个文件,共#{get_show_size(total_size)};找到后缀为(#{file_exts_string})的文件#{file_count}个,共#{get_show_size(sum)}.\033[0m"
|
64
|
+
end
|
65
|
+
|
43
66
|
# puts `du -b #{folder} | awk '{print $1}'`.to_i
|
44
67
|
end
|
45
68
|
# get_show_size
|
46
69
|
def get_show_size(size)
|
47
|
-
if size > @pro * @pro
|
70
|
+
if size > @pro * @pro * @pro
|
71
|
+
return format("%.2f",(size.to_f/(@pro*@pro*@pro))) + "GB"
|
72
|
+
elsif size > @pro * @pro
|
48
73
|
return format("%.2f",(size.to_f/(@pro*@pro))) + "MB"
|
49
74
|
elsif size > @pro
|
50
75
|
return format("%.2f",(size.to_f/@pro)) + "KB"
|
51
|
-
|
76
|
+
else
|
52
77
|
return size.to_s + "B"
|
53
78
|
end
|
54
79
|
end
|
data/lib/itools/version.rb
CHANGED