Ruby遍歷文件夾同時(shí)計(jì)算文件的md5sum
更新時(shí)間:2015年05月22日 10:22:08 投稿:junjie
這篇文章主要介紹了Ruby遍歷文件夾同時(shí)計(jì)算文件的md5sum,本文直接給出實(shí)現(xiàn)代碼,需要的朋友可以參考下
#!/usr/bin/ruby -w # require 'digest/md5' if ARGV.empty? puts "usgae: #$0 path" exit 0 end dir_name=ARGV.shift def dir_md5sum(path) md5s=Array.new if File.directory?(path) Dir.new(path).each do |file| next if file =~ /^\.+$/ file="#{path}/#{file}" if File.directory?(file) dir_md5sum(file) elsif File.file?(file) md5="#{Digest::MD5.hexdigest(File.read(file))} #{file}" md5s.push(md5) end end elsif File.file?(path) md5="#{Digest::MD5.hexdigest(File.read(path))} #{path}" md5s.push(md5) else puts "Ivalid File type" exit 2 end md5s.each do |item| puts item end end dir_md5sum(dir_name)
相關(guān)文章
Ruby中的block、proc、lambda區(qū)別總結(jié)
這篇文章主要介紹了Ruby中的block、proc、lambda區(qū)別總結(jié),本文講解了yield 和 block call 的區(qū)別、block 和 proc、lambda 的區(qū)別、proc 和 lambda 的區(qū)別,需要的朋友可以參考下2015-03-03比較不錯(cuò)的關(guān)于ruby的電子書下載地址集合
比較不錯(cuò)的關(guān)于ruby的電子書下載地址集合...2007-10-10Ruby升級(jí)后no such file to load -- readline解決辦法
這篇文章主要介紹了Ruby升級(jí)后no such file to load -- readline解決辦法,需要的朋友可以參考下2015-04-04Ruby中的Proc類及Proc的類方法Proc.new的使用解析
用Proc類可以用Proc.new來(lái)創(chuàng)建一個(gè)Proc類,進(jìn)而來(lái)操作塊,這里我們就來(lái)進(jìn)行Ruby中的Proc類及Proc的類方法Proc.new的使用解析.2016-05-05ruby元編程之創(chuàng)建自己的動(dòng)態(tài)方法
這篇文章主要介紹了ruby元編程之創(chuàng)建自己的動(dòng)態(tài)方法,本文講解使用method_missing和respond_to?創(chuàng)建自己的動(dòng)態(tài)方法,需要的朋友可以參考下2015-05-05Ruby使用設(shè)計(jì)模式中的代理模式與裝飾模式的代碼實(shí)例
這篇文章主要介紹了Ruby使用設(shè)計(jì)模式中的代理模式與裝飾模式的代碼實(shí)例,代理模式與裝飾模式都可以歸類為結(jié)構(gòu)型的設(shè)計(jì)模式,需要的朋友可以參考下2016-03-03