PRUNEHISTORY(8)
NAME
prunehistory - remove file names from Usenet history file
SYNOPSIS
prunehistory [ -f filename ] [ -p ] [ input ]
DESCRIPTION
Prunehistory modifies the history(5) text file to
``remove'' a set of filenames from it. The filenames are
removed by overwriting them with spaces, so that the size
and position of any following entries does not change.
Prunehistory reads the named input file, or standard input
if no file is given. The input is taken as a set of
lines. Blank lines and lines starting with a number sign
(``#'') are ignored. All other lines are should consist
of a Message-ID followed by zero or more filenames.
The Messge-ID is used as the dbz(3) key to get an offset
into the text file. If no filenames are mentioned on the
input line, then all filenames in the text are
``removed.'' If any filenames are mentioned, they are
converted into the history file notation. If they appear
in the line for the specified Message-ID then they are
removed.
Since innd(8) only appends to the text file, prunehistory
does not need to have any interaction with it.
OPTIONS
-p Prunehistory will normally complain about lines
that do not follow the correct format. If the
``-p'' flag is used, then the program will silently
print any invalid lines on its standard output.
(Blank lines and comment lines are also passed
through.) This can be useful when prunehistory is
used as a filter for other programs such as reap.
-f The default name of the history file is
/var/lib/news/history; to specify a different name,
use the ``-f'' flag.
EXAMPLES
It is a good idea to delete purged entries and rebuild the
dbz database every so often by using a script like the
following:
ctlinnd throttle "Rebuilding history database"
cd /var/lib/news
awk 'NF > 2 {
printf "%s\t%s\t%s", $1, $2, $3;
for (i = 4; i <= NF; i++)
printf " %s", $i;
print "\n";
}' <history >history.n
if makehistory -r -f history.n ; then
mv history.n history
mv history.n.pag history.pag
mv history.n.dir history.dir
else
echo 'Problem rebuilding history; old file not replaced'
fi
ctlinnd go "Rebuilding history database"
Note that this keeps no record of expired articles.
HISTORY
Written by Rich $alz lt;rsalz@uunet.uu.net for InterNet-
News. This is revision 1.9, dated 1996/10/29.
SEE ALSO
dbz(3) history(5) innd(8).