**This is an old revision of the document!**
PCBPack
This utility should be used to maintain your message bases. You can delete
old or received messages and even weed out duplicate messages using PCBPack.
The interface for PCBoard is done strictly on a command parameter level. To
pack your message bases, use the desired command line parameter(s) which are
described later in this section. First, you must know the syntax to execute
PCBPack.
Syntax
PCBPACK /parameter /parameter ... /parameter
/parameter | Refers to one or more command line parameters described later in this section. |
Using A Configuration File
A configuration file enables you to specify the default command line parameters that will be used each time PCBPack is run. The configuration file must meet the following criteria:
The config file must be in the current directory and named PCBPACK.CFG
PCBPACK.CFG must be a ASCII text file.
Each command line parameter must be entered on a separate line in the config file.
An example PCBPACK.CFG may contain the following:
/AREA:ALL /KEEP:45 /PURGE:7 /MAXMSGS:500 /MINMSGS:200 /KILLBAK
Using this config file you could enter PCBPACK at the DOS command prompt and it will be the equivalent of typing:
PCBPACK /AREA:ALL /KEEP:45 /PURGE:7 /MAXMSGS:500 /MINMSGS:200 /KILLBAK
NOTE: To specify a different configuration file to use when loading PCBPack, use the following syntax:
PCBPACK @FILENAME.CFG
FILENAME.CFG is the filename you want to use for PCBPack's configuration.
PCBPACK @C:\PCB\NETMAIL.CFG
Miscellaneous Command Line Parameters
/AREA:[conferences]
This is the only required command line parameter. Use this to specify the conference number to pack. To specify a range of conferences to pack, enter the beginning conference number, followed by a dash and the ending conference number to pack (e.g., 3-10). In addition, you can separate conferences and conference ranges with a semicolon. If you enter ALL, each conference on your system will have its message base packed.
Example Usage:
PCBPACK /AREA:ALL PCBPACK /AREA:3-15 PCBPACK /AREA:1-10;12;18-35
/CAP:[filename]
Specifies the filename to use for capturing the results of packing. Most SysOps will pack during their event which may run at odd hours. By referring to a capture file, errors and other information can be monitored. Replace [filename] with the filename of the capture file to create. If the file exists, the new data will be appended to the end of the file.
The format of the capture file is shown in this example:
*** Packing Conference (0) -- Main Board *** Memory available: 550552 bytes 10149888 bytes available. Number of messages kept = 0 Number of messages removed = 0 Number of messages processed = 0 Number of extraneous blocks = 0
The following describes the lines that are recorded for each conference:
- The conference number being packed.
- Total amount of free space on the drive where the message base is stored.
- The number of the messages that existed in the message base after it was packed.
- Total number of messages that were removed of packed out of the message base.
- The total number of messages before the message base was packed.
- Total number of extraneous message blocks found in the messages being packed.
Example Usage:
PCBPACK /AREA:3 /CAP:PCBPACK.LOG
/CRC:[days]
In order to kill duplicate messages (/KILLDUP), you must maintain a CRC database. Each message will generate a unique CRC value. If two messages which generate the same CRC value are found in a conference, the latter message will be packed out. Replace [days] with the number of days that the CRC database will be maintained.
Example Usage:
PCBPACK /AREA:33 /CRC:90 /KILLDUP
/FAST
Instead of displaying the normal message and packing statistics, display the minimum amount of information about each conference. The following shows a conference being packed in regular mode:
while this shows a conference being packed using the /FAST command line parameter:
Example Usage:
PCBPACK /AREA:ALL /FAST
/FILE:[filename]
Normally, PCBPack will look for the PCBOARD.DAT file to exist in the directory that you run PCBPack from. If you want to specify where PCBPack can find the PCBOARD.DAT file, use this command line parameter. In place of [filename], specify the path and filename where the PCBOARD.DAT you want to use can be found.
Example Usage:
PCBPACK /AREA:32 /FILE:C:\TEMP\PCBOARD.DAT
/HELP
This command line parameter will display brief descriptions of the command line parameters for PCBPack.
/INDEX
If you want to generate only an index for a message base, use this command line parameter. If you suspect that an index has become corrupt, use this command line parameter.
NOTE: When this parameter is used, PCBPack will ignore all command line parameters that will pack the message base. For example, you cannot use the /MAXMSGS parameter with the /INDEX parameter.
Example Usage:
PCBPACK /AREA:9-12 /INDEX
/KILLBAK
When PCBPack processes message bases it creates backup files for each conference that is processed. Should something go wrong with a message base, you may want to use these backup files to help rebuild the message base. If you have no desire to leave these backup files on your drive, use this command line parameter. When this parameter is used, the backup files will be deleted after each message base is processed.
Example Usage:
PCBPACK /AREA:10-35;50 /KILLBAK
/NOCALLER
When this command line parameter is used, no information about the packed message bases will be written to the caller logs. When pack information is written to the caller logs, the following format is used:
*** Packing Conference (0) -- Main Board *** *** Packing Conference (1) -- Chatter ***
Each line written shows the conference number and name that was packed.
Having this information in the caller logs is most useful when you run your
events at hours when you are not available to watch it run.
Example Usage:
PCBPACK /AREA:2-13 /NOCALLER
/OLDINDEX
PCBPack will check the PCB environment variable and the conference information to determine if it needs to create the old index files (v14.x compatible). To force PCBPack to create the older index files, use this command line parameter:
Example Usage:
PCBPACK /AREA:32-60 /OLDINDEX
/QUIET
This command line switch is identical to the /FAST switch. See the description of that switch for additional details.
/RENUMBER:[beginning number]
PCBoard allows you to enter in excess of 16 million messages before you will reach a point where you must renumber the message base(s). If you need to renumber the message bases to begin with a new number, enter the new beginning message number in place of [beginning number].
NOTE: When a message base is renumbered, the user records are not updated.
If you renumber you message bases, reset the last message read pointers for
all users affected. If you do not, your users may miss new messages left in
the renumbered conference.
Example Usage:
PCBPACK /AREA:99 /RENUMBER:1
/REPORT:[filename]
To help you keep tabs on how active the message base in each conference on your system is, use this command line parameter replacing [filename] with the filename you want to output the report to. If the filename specified exists on disk, the contents of the file will be overwritten with the new report. The following shows the format of the report.
Conference High Low Active ===================== ======== ======== ======== ( 0) Main Board 263 4264 1256 ( 1) Chatter 62 264 125 ( 2) Debate 3325 5634 896 ======== 2277
Each line shows the conference number, conference name, high message number, low message number, and total active messages. The last line in the report summarizes the total number of active messages in the report.
If you use this command line parameter with any packing command line parameters, the report will be generated for each conference before the message base is packed.
Example Usage:
PCBPACK /AREA:ALL /REPORT:PCBPACK.RPT
/TIMEOUT:[seconds]
If PCBPack attempts to pack a message base that is currently in use, it will normally attempt to access it for 60 seconds before skipping the message base. If you want to change the default wait time, use this command line parameter. Replace [seconds] with the number of seconds you want PCBPack to attempt to access a message base.
Example Usage:
PCBPACK /AREA:1-10 /TIMEOUT:90
/UPCASE
This command line parameter will convert the subject of all messages to uppercase. Even though PCBoard is capable of handling messages with mixed case subjects, it may be desirable to have all of your subjects in uppercase.
Example Usage:
PCBPACK /AREA:ALL /UPCASE
/UPDATE
PCBoard's message base format has remained the same for v14.x and v15.x.
Both versions of PCBoard use different index files. If you are using
third-party software which supports the v14.x index files (.NDX), use this
parameter to update the newer index files (.IDX). For example, if you are
using a off-line mail door that imports mail packets but does not update the
newer index format, use PCBPack with the /UPDATE parameter to update the new
index files.
Example Usage:
PCBPACK /AREA:ALL /UPDATE
Command Line Parameters That Delete (Pack) Messages
One of the primary purposes of PCBPack is to delete or pack messages by removing older messages. The command line parameters described in this section will delete messages using the criteria that is specified in the description of each parameter. Regardless of the command line parameter you select, messages that have been killed on the BBS will be deleted.
/DATE:[mmddyy]
This command line parameter will enable you to delete any messages older than the date you specify. The date should be specified in mmddyy where mm is the month, dd is the day of the month, and yy is the year. If you want to pack all messages that are older than 05-23-94 then you would enter the parameter as /DATE:052394.
Example usage:
PCBPACK /AREA:3-13;39 /DATE:041893
/DAYS:[number of days]
This command line parameter will enable you to delete any message that is older than the number of days that you specify. For example, if you want to delete any messages that are older than 90 days, you would enter the parameter as /DAYS:90.
Example usage:
PCBPACK /AREA:4 /DAYS:60
/KEEP:[days]
This command line parameter does not delete messages. Instead, it prevents PCBPack from deleting any message which meet the following criteria:
- The message is newer than the number of days specified.
- The security on the message is RECEIVER ONLY.
- The message has not been read yet.
Even if the message would normally be deleted, this parameter will take precedence.
Example Usage:
PCBPACK /AREA:ALL /MAXMSGS:500 /KEEP:45
/KILLALL
If you want to delete every message in the message bases you process, use this command line parameter. You may find this parameter useful for restarting one or more message bases.
Example Usage:
PCBPACK /AREA:100-150 /KILLALL
/KILLDUPS
With netmail it is quite possible that duplicate messages may get imported into your system. Rather than manually marking each duplicate message to be deleted, you can use this command line parameter. If PCBPack sees two duplicate messages in a message base, the latter message will be deleted. To properly kill duplicate messages, you must use this parameter in conjunction with the /CRC parameter.
Example Usage:
PCBPACK /AREA:ALL /KILLDUP /CRC:7
/MAXMSGS:[number]
To regulate the maximum number of messages in a conference, use this command line parameter. This parameter is ideal for conferences which have a lot of messages entered each day. By regulating the maximum number of messages, you will have a good estimate of the disk space required to store the messages.
Example Usage:
PCBPACK /AREA:ALL /MAXMSGS:500
/MINMSGS:[number]
If you want to force PCBPack to keep a minimum number of messages in a message base, use this command line parameter. User of this parameter is ideal for message bases that do not have a lot of message traffic. If you were to pack using a date or number of days, there may be only a few message left for users to read on your system.
Example Usage:
PCBPACK /AREA:53-69;3 /MINMSGS:100
/PURGE:[days]
This command line parameter will delete any message that meet the following criteria:
- The message is older than the number of days specified. If the number of days is not specified, PCBPack will not do any date checking on the message.
- The security on the message is RECEIVER ONLY.
- The message has been read by the recipient..
Example Usage:
PCBPACK /AREA:ALL /PURGE PCBPACK /AREA:ALL /PURGE:14
/RANGE:[low]-[high]
To delete messages which fall in a given range, use this command line parameter. Any message number between the low and high message number specified will be deleted.
Example Usage:
PCBPACK /AREA:32 /RANGE:100-200
Diagnostic And Repair Command Line Parameters
The command line parameters described in this section are used for diagnostics and repair. You should not use these unless instructed to do so by the technical support staff.
/DEBUG:[detail level]
This command line parameter will produce diagnostic information for diagnosing problems with PCBPack. You should only use this parameter when instructed to do so by the technical support staff. The technician you work with will provide the detail level number you should use.
Example Usage:
PCBPACK /AREA:ALL /DEBUG:300
/FIX
This command line parameter will insure that the message base header is accurate. Use of this parameter will significantly increase the time it takes to pack your message base(s).
/REPAIR
This command line parameter is identical to /FIX. Refer to the description of the /FIX parameter for additional details.
Examples
To delete any message that is older than 30 days but keep unread RECEIVER ONLY messages in conferences 1 through 10, enter the following:
PCBPACK /AREA:1-10 /DAYS:30 /KEEP
The following example demonstrates the use of several command line parameters. The actions performed are described after this sample command line:
PCBPACK /AREA:1-10;20-100 /MAXMSGS:250 /KEEP /UPCASE
Pack the message bases of conference 1 through 10, and 20 through 100.
No message base will contain more than 250 messages. Older messages will be deleted first.
Keep any message that has not been read by the recipient and is RECEIVER ONLY.
Convert all subjects to uppercase.