diff options
author | Patrick Simianer <p@simianer.de> | 2016-07-05 11:01:46 +0200 |
---|---|---|
committer | Patrick Simianer <p@simianer.de> | 2016-07-05 11:01:46 +0200 |
commit | 2b1d7f881c19c4d4b5afae194e02d3300c7675d0 (patch) | |
tree | 5a06ee7de98640a39244b57bb369697176b44ebf /merge-files | |
parent | 69949dda35c3ea21d8e926e5f0a596a0a0f61c6a (diff) |
mv
Diffstat (limited to 'merge-files')
-rwxr-xr-x | merge-files | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/merge-files b/merge-files new file mode 100755 index 0000000..714b57d --- /dev/null +++ b/merge-files @@ -0,0 +1,31 @@ +#!/usr/bin/env ruby + +require 'zipf' + +def usage + STDERR.write "merge_files <file>+\n" + exit 1 +end +usage if ARGV.size==0 + +files = ARGV +hashes = [] + +files.each { |i| + hashes.push Hash.new + hashes.last.default = 0 + f = ReadFile.new i + while line = f.gets + hashes.last[line.strip] += 1 + end + f.close +} + +hashes.each { |h| + h.each { |k,v| + counts = [] + hashes.each { |j| counts.push j[k]; j.delete k } + counts.max.times { puts k } + } +} + |