对比两个目录中的文件改动
发布时间:2020-12-17 04:07:47 所属栏目:百科 来源:网络整理
导读:今天PHP站长网 52php.cn把收集自互联网的代码分享给大家,仅供参考。 #!/usr/bin/rubyrequire 'set'def rdiff (src_path,dst_path) if (File.exist?(src_path)) then path = src_path else path = dst_path end if (File.
以下代码由PHP站长网 52php.cn收集自互联网 现在PHP站长网小编把它分享给大家,仅供参考 #!/usr/bin/ruby require 'set' def rdiff (src_path,dst_path) if (File.exist?(src_path)) then path = src_path else path = dst_path end if (File.directory?(path)) then if (File.directory?(src_path)) then src_files = `ls #{src_path}`.split() end if(File.directory?(dst_path)) then dst_files = `ls #{dst_path}`.split() end files = Set[] if (src_files != nil) then src_files.each do |f| files.add(f) end end if (dst_files != nil) then dst_files.each do |f| files.add(f) end end files.each do |f| rdiff("#{src_path}/#{f}","#{dst_path}/#{f}") end elsif (File.file?(src_path) and File.file?(dst_path)) then str = `diff #{src_path} #{dst_path}` if (str.size > 1) then print("---------- DIFF ----------nSRC: #{src_path}nDST: #{dst_path}n#{str}nn") end else print("---------- DIFF ----------nOnly File: #{path} existnn") end end if (ARGV.size != 2) then print "n*** Directory diff tool.n by suf.fnstn" print "*** Please run as root.nn" print "Make sure only 2 args set.n" print "usage: rdif DIR1 DIR2nn" exit -1 end rdiff(ARGV[0],ARGV[1]) 以上内容由PHP站长网【52php.cn】收集整理供大家参考研究 如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |