<HTML> <HEAD> <TITLE>MHonArc Reference -- Appendix: Utility Programs</TITLE> <link rel="stylesheet" type="text/css" href="docstyles.css"> </HEAD> <BODY> <!--X-NavButtons-Start--> <table width="100%"> <tr valign="top"> <td align="left"><nobr><a href="app-diagnos.html"><img src="prev.png"border=0 alt="[Prev]"></a> </nobr></td><td align="center" width="99%"><a href="mhonarc.html"><img src="up.png" border=0 alt="[TOC]"></a><a href="faq/faq.html"><img src="faq.png" border=0 alt="[FAQ]"></a><a href="app-bugs.html"><img src="bug.png" border=0 alt="[Bugs]"></a><a href="http://www.mhonarc.org/"><img src="home.png" border=0 alt="[Home]"></a></td><td align="right"><nobr> <a href="app-api.html"><img src="next.png" border=0 alt="[Next]"></a></nobr></td></tr></table> <!--X-NavButtons-End--> <HR> <H1><a name="appendixA">Appendix: Utility Programs</a></H1> <P>This appendix describes the additional utility programs that are included in the MHonArc distribution. The utility programs are installed with <b>mhonarc</b> during the installation process. </P> <!--X-TOC-Start--> <ul> <li><a href="#mha-dbedit">mha-dbedit</a> <li><a href="#mha-dbrecover">mha-dbrecover</a> <ul> <li><small><a href="#mha-dbrecover-options">Additional Options</a></small> </ul> <li><a href="#mha-decode">mha-decode</a> <ul> <li><small><a href="#mha-decode-options">Additional Options</a></small> <li><small><a href="#mha-decode-examples">Examples</a></small> </ul> </ul> <!--X-TOC-End--> <hr> <H2><a name="mha-dbedit">mha-dbedit</a></H2> <P><b>mha-dbedit</b> allows modifications to be made to an archive database without regenerating any archive pages. </P> <p>Typical usage: </p> <table border=1 width="100%"><tr><td><pre class="shell"> prompt> <b>mha-dbedit <a class="shell" href="resources/rcfile.html">-rcfile</a> <var>res.mrc</var> <a class="shell" href="resources/outdir.html">-outdir</a> <var>/path/to/archive</var></b> </pre></td></tr></table> <hr> <H2><a name="mha-dbrecover">mha-dbrecover</a></H2> <P><b>mha-dbrecover</b> recreates an archive database from the individual message pages. This program is useful if an archive database gets corrupted, or accidentally deleted. </P> <p>Typical usage: </p> <table border=1 width="100%"><tr><td><pre class="shell"> prompt> <b>mha-dbrecover <a class="shell" href="resources/outdir.html">-outdir</a> <var>/path/to/archive</var></b> </pre></td></tr></table> <p>If the archive used different resource settings from the defaults for controling filenames, then you must specify those settings when invoking <b>mha-dbrecover</b>. For example, if you are using "<tt>shtml</tt>" for <a href="resources/htmlext.html">HTMLEXT</a>, then you should invoke <b>mha-dbrecover</b> like the following: </p> <table border=1 width="100%"><tr><td><pre class="shell"> prompt> <b>mha-dbrecover <a class="shell" href="resources/htmlext.html">-htmlext</a> shtml <a class="shell" href="resources/outdir.html">-outdir</a> <var>/path/to/archive</var></b> </pre></td></tr></table> <p><b>mha-dbrecover</b> will only recreate non-layout message related data. If the archive had resource settings that were different than the the defaults, then those resource settings must be specified when invoking <b>mha-dbrecover</b>. For example: </p> <table border=1 width="100%"><tr><td><pre class="shell"> prompt> <b>mha-dbrecover <a class="shell" href="resources/rcfile.html">-rcfile</a> <var>res.mrc</var> <a class="shell" href="resources/outdir.html">-outdir</a> <var>/path/to/archive</var></b> </pre></td></tr></table> <h3><a name="mha-dbrecover-options">Additional Options</a></h3> <p><b>mha-dbrecover</b> supports the additional command-line options: </p> <dl> <dt><strong><tt>-dbr-startnum <var>#</var></tt></strong></dt> <dd>The starting message number to recover data from. This option is useful if you have many message files in a directory, but you only want to recover a subset of the files. If this option is not specified, the starting number is 0. </dd> </dl> <dl> <dt><strong><tt>-dbr-endnum <var>#</var></tt></strong></dt> <dd>The ending message number to recover data from. This option is useful if you have many message files in a directory, but you only want to recover a subset of the files. If this option is not specified, all messages starting from <tt>-dbr-startnum</tt> will be recovered. </dd> </dl> <p>Using the number range options are typically not needed, but may be useful if the archive is maintained with a <a href="resources/maxsize.html">MAXSIZE</a> (or <a href="resources/expireage.html">EXPIREAGE</a>), and <a href="resources/keeponrmm.html">KEEPONRMM</a> is active. The message number range options will allow you to minimize recovering processing by having <b>mha-dbrecover</b> skip messaages that will be dropped from the database due to the <a href="resources/maxsize.html">MAXSIZE</a>, or <a href="resources/expireage.html">EXPIREAGE</a>, setting. </p> <p>For example, say you have an archive directory with 1000 message pages numbered 0 through 999, and the maximum size of the archive is 200. The following command will make recovering more efficient by skipping the first 800 messages since they will be dropped from the database anyway: </p> <table border=1 width="100%"><tr><td><pre class="shell"> prompt> <b>mha-dbrecover -dbr-startnum 800 <a class="shell" href="resources/outdir.html">-outdir</a> <var>/path/to/archive</var></b> </pre></td></tr></table> <table class="note" width="100%"> <tr valign=top> <td><strong>NOTE</strong></td> <td width="100%"><p>It is possible that message number order may not exactly match date order. You may want to increase the number range to take in account of possible anomolies where message number order may vary from message date order. </p> </td> </tr> </table> <hr> <H2><a name="mha-decode">mha-decode</a></H2> <P><b>mha-decode</b> is a utility program unrelated to MHonArc archives. <b>mha-decode</b> provides basic MIME decoding capabilites for messages. </P> <p>If given mail folders as input, all messages within in the mail folders will be decoded. All message parts are written to files. If a filename is specified for a message part, that filename will be used when writing the part to a file. If no filename is specified in the message, a unique name will be used based upon the content-type of the message part. </p> <p>A single message can be decoded by using the <tt>-single</tt> option. </p> Only MHonArc options that affect parsing of mail folders are applicable for <b>mha-decode</b>. The following options are applicable: <tt>-conlen</tt>, <tt>-mhpattern</tt>, <tt>-msgsep</tt>, <tt>-noconlen</tt>, <tt>-outdir</tt>, <tt>-perlinc</tt>, <tt>-rcfile</tt>, <tt>-single</tt>, <tt>-umask</tt>. <h3><a name="mha-decode-options">Additional Options</a></h3> <p><b>mha-decode</b> supports the additional command-line options: </p> <dl> <dt><strong><tt>-dcd-digest</tt></strong></dt> <dd>Do not parse message/rfc822 and message/news attachments. Normally, <b>mha-decode</b> will recursively parse message attachments and decode any parts contained within. With this option, any message attachment encountered will be saved intact. </dd> </dl> <h3><a name="mha-decode-examples">Examples</a></h3> <p>Basic usage: </p> <table border=1 width="100%"><tr><td><pre class="shell"> prompt> <b>mha-decode inbox</b> </pre></td></tr></table> <p>Use <tt>-outdir</tt> to have all decoded data placed into a separate directory: </p> <table border=1 width="100%"><tr><td><pre class="shell"> prompt> <b>mha-decode <a class="shell" href="resources/outdir.html">-outdir</a> <var>/var/tmp</var> inbox</b> </pre></td></tr></table> <p>And to decode a single message:</p> <table border=1 width="100%"><tr><td><pre class="shell"> prompt> <b>mha-decode <a class="shell" href="resources/single.html">-single</a> <var>msg.822</var></b> </pre></td></tr></table> <p>or from standard input:</p> <table border=1 width="100%"><tr><td><pre class="shell"> prompt> <b><var>some_program</var> | mha-decode -single</b> </pre></td></tr></table> <p>Save out attached messages and then pass them into MHonArc to be added to a archive: </p> <table border=1 width="100%"><tr><td><pre class="shell"> prompt> <b>mha-decode -dcd-digest <a class="shell" href="resources/single.html">-single</a> <var>digest</var></b> prompt> <b>mhonarc <a class="shell" href="resources/outdir.html">-outdir</a> <var>/path/to/archive</var> <a class="shell" href="resources/mhpattern.html">-mhpattern</a> '^822.*\.822$' .</b> </pre></td></tr></table> <p> </p> <table class="note" width="100%"> <tr valign="baseline"> <td><strong>NOTE:</strong></td> <td width="100%"><p>There is a trailing dot, '<tt>.</tt>', at the end of the called to <b>mhonarc</b> to tell <b>mhonarc</b> to process the current working directory. </p> </td> </tr> </table> <p> </p> <table class="caution" width="100%"> <tr valign=top> <td><strong style="color: red;">CAUTION:</strong></td> <td width="100%"><p>You will need to reset the <a href="resources/mhpattern.html">MHPATTERN</a> resource if normal input into the archive is from MH-style mail folders. </p> </td> </tr> </table> <hr> <!--X-NavButtons-Start--> <table width="100%"> <tr valign="top"> <td align="left"><nobr><a href="app-diagnos.html"><img src="prev.png"border=0 alt="[Prev]"></a> </nobr></td><td align="center" width="99%"><a href="mhonarc.html"><img src="up.png" border=0 alt="[TOC]"></a><a href="faq/faq.html"><img src="faq.png" border=0 alt="[FAQ]"></a><a href="app-bugs.html"><img src="bug.png" border=0 alt="[Bugs]"></a><a href="http://www.mhonarc.org/"><img src="home.png" border=0 alt="[Home]"></a></td><td align="right"><nobr> <a href="app-api.html"><img src="next.png" border=0 alt="[Next]"></a></nobr></td></tr></table> <!--X-NavButtons-End--> <HR> <address> $Date: 2003/10/06 22:04:14 $ <br> <img align="top" src="monicon.png" alt=""> <a href="http://www.mhonarc.org" ><strong>MHonArc</strong></a><br> Copyright © 1998-1999, <a href="http://www.mhonarc.org/~ehood/" >Earl Hood</a>, <a href="mailto:mhonarc%40mhonarc.org" >mhonarc<!-- -->@<!-- -->mhonarc.org</a><br> </address> </BODY> </HTML>