itools 0.2.3 → 0.2.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d39ab21ff4227e324816580ed8b0f7ae04da79961bd117e145cc8e0f62223e0e
4
- data.tar.gz: 36ea5a963b803db9f14a2ea6ac1c09e12cdf2edd413bcfd7b9b0106e4cb60c06
3
+ metadata.gz: 9767a4dc31da86dba35eb36ff7c140518af6339eb176818520d7ee0aa51fd12a
4
+ data.tar.gz: 4b0caef476cc596ae88813158e3a3a89a2c2410dd976fee46ae4ba3191dc2da9
5
5
  SHA512:
6
- metadata.gz: 60dafd60cb71a5543ce38c6533be49cecdca20fa507f35ad37437caa3d6684e1133cd7a2f51dffc6bf7f4b376a5e59a5c8d35f33fc8321490c7dddeb0e100423
7
- data.tar.gz: e582dfc21639a60c7976f1eef89ecad4ce6aca0c27f75585c7a9e057765df6825a9dd2918c992bddb7bb9d2ccab1c4e8f2b28e01ea78428e84a9d17fdd4bf9b5
6
+ metadata.gz: d12af5520c72c8bb3067686e14726581cab1a30630ea0c96d45d0bbe29effa4ecf97b9701f67e82e002ededa7aee719105ae46b83c94f65d05cd413c73dc88dd
7
+ data.tar.gz: cbd77f0e21354edc97de7e707dffd84a03be636600053de5897e6751c82602de5ce01dbc13f6b97d21cf033bff5de15e25c151d07f8baa84427ee66cfbdd1506
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- itools (0.2.3)
4
+ itools (0.2.4)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -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
- sum = sum + File.size(filename)
38
- file_count = file_count + 1
39
- # puts "#{File.basename(filename)}的大小为:#{get_show_size(File.size(filename))}"
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
- puts "\033[32m文件夹中共#{file_count}个文件,共占用内存大小为:#{get_show_size(sum)}.\033[0m"
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
- else
76
+ else
52
77
  return size.to_s + "B"
53
78
  end
54
79
  end
@@ -1,3 +1,3 @@
1
1
  module Itools
2
- VERSION = "0.2.3"
2
+ VERSION = "0.2.4"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: itools
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.3
4
+ version: 0.2.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - zhanggui