You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
94 lines
2.9 KiB
Plaintext
94 lines
2.9 KiB
Plaintext
#!@BASH@
|
|
|
|
#
|
|
# multidig 1.1
|
|
#
|
|
# Copyright (c) 1998-1999 The ht://Dig Group
|
|
# Distributed under the terms of the GNU General Public License (GPL)
|
|
# version 2 or later.
|
|
# for the ht://Dig search system http://www.htdig.org/
|
|
# and the multidig script system http://www.htdig.org/contrib/scripts/
|
|
#
|
|
# Part of the "multidig script system"
|
|
# a system of shell scripts and some modified conf files
|
|
# that makes dealing with multiple databases easier for ht://Dig
|
|
#
|
|
# Syntax:
|
|
# multidig [-v]
|
|
#
|
|
# Performs all the digging, merging and so on needed
|
|
# for indexing and updating multiple db
|
|
# Merges multiple databases into ``collected'' db
|
|
#
|
|
|
|
# This is useful for debugging info
|
|
if [ "$1" = "-v" ]; then
|
|
verbose=-v
|
|
fi
|
|
|
|
# You may need to set the following:
|
|
MULTIDIG_CONF=@CONFIG_DIR@/multidig.conf
|
|
source $MULTIDIG_CONF
|
|
|
|
# Start indexing.
|
|
rm $REPORT
|
|
for db in `cat $DB_LIST`; do
|
|
echo Digging $db at: `date`
|
|
# What's the conf file for this database?
|
|
CONF=$CONFIG_DIR/$db.conf
|
|
if [ "$1" = "-v" ]; then
|
|
echo " Indexing $db at: `date`"
|
|
fi
|
|
$BINDIR/htdig -a $verbose -s -c $CONF >>$REPORT
|
|
if [ "$1" = "-v" ]; then
|
|
echo " Merging $db at: `date`"
|
|
fi
|
|
$BINDIR/htmerge -a $verbose -s -c $CONF >>$REPORT
|
|
|
|
if [ "$1" = "-v" ]; then
|
|
echo " Moving files $db at: `date`"
|
|
fi
|
|
# If you don't have the space for backups, this step can be omitted
|
|
if [ $BACKUPS = "true" ]; then
|
|
cp $DB_BASE/$db/db.docdb $DB_BASE/$db/db.docdb.bak
|
|
cp $DB_BASE/$db/db.docs.index $DB_BASE/$db/db.docs.index.bak
|
|
# cp $DB_BASE/$db/db.wordlist $DB_BASE/$db/db.wordlist.bak
|
|
cp $DB_BASE/$db/db.words.db $DB_BASE/$db/db.words.db.bak
|
|
fi
|
|
|
|
# Copy the db.docdb file, the .work file is needed for update digs
|
|
cp $DB_BASE/$db/db.docdb.work $DB_BASE/$db/db.docdb
|
|
# We don't do anything with the db.wordlist file because the
|
|
# .work file is needed for update digs and the non-work file isn't needed
|
|
# cp $DB_BASE/$db/db.wordlist.work $DB_BASE/$db/db.wordlist
|
|
# These .work files are never used, so let's just keep the active copy
|
|
mv $DB_BASE/$db/db.docs.index.work $DB_BASE/$db/db.docs.index
|
|
mv $DB_BASE/$db/db.words.db.work $DB_BASE/$db/db.words.db
|
|
|
|
# Make them world readable!
|
|
chmod 644 $DB_BASE/$db/db.docdb
|
|
chmod 644 $DB_BASE/$db/db.docdb.work
|
|
chmod 644 $DB_BASE/$db/db.docs.index
|
|
# chmod 644 $DB_BASE/$db/db.wordlist
|
|
chmod 644 $DB_BASE/$db/db.words.db
|
|
if [ "$1" = "-v" ]; then
|
|
echo " Done with $db at: `date`"
|
|
fi
|
|
done
|
|
# Now generate the collections by merging their component databases
|
|
# We do this in our gen-collect script, so we won't do that here.
|
|
$BINDIR/gen-collect $1
|
|
|
|
if [ "$1" = "-v" ]; then
|
|
echo
|
|
fgrep "htdig:" $REPORT
|
|
echo
|
|
fgrep "htmerge:" $REPORT
|
|
echo
|
|
echo Total lines in $REPORT: `wc -l $REPORT`
|
|
fi
|
|
|
|
# You probably don't need to do this since the script will remove it next
|
|
# time it's run. But you can do it anyway
|
|
# rm $REPORT
|