PRUNEHISTORY(8)

PRUNEHISTORY(8)

procinfo Home Page System Administration Index ps2fax


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). 

procinfo Home Page System Administration Index ps2fax