#!/bin/csh # set tmpfile=uncomp.db.$$ set tmpfile2=wordlist.$$ if ( $# != 2 ) then echo "Usage: $0 infile outfile" exit endif if ( "$1" == "$2" ) then echo "$0: infile and outfile cannot be the same." exit endif echo "Database re-optimizer: This may take a while, if your database is huge." echo "FurryMUCK's 60 meg db took less than an hour to re-optimize, but most of" echo "that time was spent in converting the database formats and compression." echo "The program to find the optimized words took less than 15 minutes." echo "" echo "Uncompressing the input db..." ./netmuck -convert -decompress $1 $tmpfile echo "Calculating the optimized wordlist..." ( \ cat data/wordlist.txt | sed 's/^/::/' ; \ cat $tmpfile \ ) | ./topwords | sort > $tmpfile2 mv data/wordlist.txt data/wordlist.bak mv $tmpfile2 data/wordlist.txt echo "Recompressing the database with the new optimized wordlist..." ./netmuck -convert $tmpfile $2 rm -f $tmpfile $tmpfile2 echo "Done. The file $2 will now contain the optimized database."