#! /ruby/bin/ruby # -*- Ruby -*- # # rfnmz - Reindex NMZ.field.* files. # # Copyright (C) 2001 Yasuhisa Kondo # Original Copyright (C) 2000 Namazu Project All rights reserved. # This is free software with ABSOLUTELY NO WARRANTY. # if ARGV[0] == nil then print "usage: rfnmz \n" exit end target = ARGV[0] unless FileTest.directory?(target) then print "invalid target: #{target}\n" exit end Dir.chdir(target) fields = Dir.glob('NMZ.field.*') fields.delete_if{|field| field =~ /\.i$/ } fields.each{|file| begin fh_in = File.open(file, "r") rescue print $!, "\n" fh_in.close exit end fh_in.binmode begin fh_out = File.open("#{file}.i", "w") rescue print $!, "\n" fh_in.close exit end fh_out.binmode ptr = 0 fh_in.each{|line| fh_out.print(ptr.to_a.pack('N')) ptr += line.size } fh_in.close fh_out.close }