Expired File Remover

E.F.R.

Copyright(c) 1991... All Rights Reserved

Written By Gary Bouchard

SysOp

The Computer Store BBS

St. Augustine, Florida

(904)794-0063

PCBoard is Copyright(c) Clark Development Company Inc.

PCBFILER is a Copyright(c) of Clark Development Company Inc.

TABLE OF CONTENTS

OverView	3

Installation	4

Operations	7

Output	7

Report File	7

Callers Log Output	8

Command Line Switches	8

Comments	9

Appendix (Sample Output)	11

I. OVERVIEW

▪	What is E.F.R. ?

Expired File Remover is a utility that is used in conjunction with PCBoard(tm) version 14.x or greater. E.F.R. was developed to be used as a time saver for PCBoard(tm) SysOp's, in the maintenance and care of their respective BBS'es. E.F.R. will read all of you DIRxx file listings, and either move or remove file listings that have expired, according to the SysOp's specifications. E.F.R. was designed to run via a batch mode for unattended operation, thus freeing the SysOp for other activities.

▪	Why E.F.R. ?

E.F.R. was developed because of the amount of time that it took me to maintain my BBS system, and to keep up with the vast uploads of files. I am sure that many times, you have so many new uploads, that you just do not have any disk space available to take them in. My problem was that I found I was a pack rat, keeping files that I downloaded in 1983 when I first got involved in computers. As a result my disk drives were coming apart at the seams. A very time consuming task is that of going thru all of your file directories to locate files that are just too old, or have been replaced with newer versions. I wanted a utility that I would not have to pay for <grin>, but that would have all the features needed for unattended operation in my Event.sys routines. I am sure that there are many programs like mine, but with all of the utilities that are needed to run my BBS, it can get expensive to register all of those products. For that reason, I decided to write this program mainly for myself, but also to share with all PCBoard(tm) SysOp's that want to use it.

▪	What is the cost of E.F.R. ?

I spent many hours at my desk, away from my family, to develop this program. I do, however have a full time job (fortunately), and I program as a novice for a hobby. It is for that reason that there is no charge for E.F.R. This program is being released under the FREEWARE concept. What that means to you is that you may use E.F.R. as often as you like, in any way you like. You may copy and distribute the program to whom ever you desire, provided that you do not alter in anyway the original program or it's function. All I ask in return for the use of this program is your acknowledgement that you are using the program, and that you please forward any comments or suggestions to me via my BBS or by leaving me a message on Salt Air BBS.

II. INSTALLATION

▪	Installation of E.F.R. could not be any simpler. Copy all of the files to a directory which is contained in your DOS path. There are two main files required for the initial operation of this program. The first one of course is EXPIRED.EXE, and the second is your configuration file EXPIRED.CFG. The name of your configuration file may vary, however a sample file has been included for your inspection and use if you like. There is a third file which is optional called a Exclude list. A sample included in this ZIP file is called EXPIRED.EFR. You may name this file anything you wish, as long as it is specified in your configuration file.

▪	Configuring E.F.R. is a simple process of either using the sample configuration file, and altering it to suit your needs, or creating your own. The lines necessary for operation are detailed below. Though each parameter in the configuration file is commented, and explained briefly, here you will find a bit more detail in the configuration. Any line in the configuration file that begins with the character ';' is considered by E.F.R. to be a comment, and is ignored by E.F.R.. As noted by the example enclosed, you may place comments after entries to document your configuration if you desire.

PCB - This parameter is used to tell E.F.R. where it can expect to find the PCBOARD.DAT file. This file contains information about your BBS that will allow E.F.R. to lookup and execute without your intervention. When you list this file, make sure that there is at least one space between the KEYWORD PCB and the file name. You should also specify the pathname location of the file to prevent any problems with the operation of the program.

Example; (PCB C:\PCB\PCBOARD.DAT).

NUMDAYS - This variable specifies how many days back the EFR should go to determine if the file it is looking at is expired. In other words, how many days old must a file be before the program moves or deletes it. This number should be in a day format since E.F.R. does a julian calculation on the file date to determine the number of days difference there is between the current system date, and the date of the file. For Example, if you wanted to delete files that were 2 years old or more, you would make NUMDAYS equal to 730, or 365x2.

REPORTFILE - Is the name of the file the E.F.R. will create to let you know what files qualified for deletion or moved off line. Include the complete path and name of the file for this parameter.

EXAMPLE; REPORTFILE D:\TP\REPORT.FIL

EXCLUDE - This is a parameter you use to specify the name of the file, that contains filenames or directories that you do not wish to be processed while E.F.R. is executing. A sample of this file is provided for you to view, and alter to your specifications if you desire. This is not a mandatory entry, and the program will assume that there are no exclusions if you do not specify a file. Viewing the sample exclude list will help you understand what entries can be placed into this file. As with the Configuration file, any line that begins with the character ';' is considered a comment by E.F.R. and anything that follows the ';' on that line is ignored. This also gives you the capability to document each line of your configuration and exclude file with notes after each line entry if you wish to. To use this option, simply be sure that the keyword EXCLUDE is in the first column of the line, then after it, place the path and name of your exclude list file.

EXAMPLE; EXCLUDE D:\TP\EXCLUDE.EFR

PRINT - Is a parameter that will output your REPORT FILE to your printer rather than to disk. To activate this feature, simply remove the ';' comment, and your output is sent to the printer as the program executes.

OFFLINE_DIR - Is the path location and name of your offline directory. Just like when you use PCBFILER(tm), you specified a directory to move offline files to. You would do the same here. Tell E.F.R. where to put files that you wish to move off line. The program will not function if you specify that you want to MOVE files, but do not specify where to move them to. Please be sure to place an ending slash on the path name, or the program will return with a error message, and abort.

EXAMPLE; OFFLINE_DIR D:\ARC\

DLFILE - This parameter is used to tell E.F.R. where your physical downloadable files are located. To have a file participate in the evaluation of its age, and subsequent action, you must be sure the include the directory in this list. Each directory that is to be searched must be listed first by the keyword DLFILE, then the path name. A trailing slash is not used at this point.

EXAMPLE; DLFILE C:\PCB\DL1

DLFILE C:\PCB\DL2

These are not your DIRxx text file descriptions.... these are the actual physical directories of the files you wish to work with. Even if an excluded file is contained in one of these directories, you need to list it. The exclude list will prevent the file from being removed or moved.

CALLERLOG - This parameter allows you to log E.F.R. activity to your PCBoards(tm) callers log which is specified in the file PCBOARD.DAT. E.F.R. will automatically locate the name and location of the file, and make it's entries accordingly.

PIPE - Is a variable that is used by E.F.R. when printing your report file to place a remark about the age of the file. The pipe tells E.F.R. what position your secondary line descriptions start at. If it is different than column 32, then place that number next to this keyword. The program defaults to column 32.

EXAMPLE; PIPE 32

BAKS - This parameter is a switch that you can control to tell E.F.R. whether you want backup files or your DIRxx files before it processes them. It you indicate 'YES' to this keyword, you will find that after E.F.R. completes it's processing you have files that look like "DIRxx.BAK". This way, if you are unhappy with the results, you may restore your original files.

CONFS - This is a keyword that will tell E.F.R. which conferences it needs to process. All that is required here is that you place the conference NAME next to the keyword CONFS for each conference you want processed.

EXAMPLE;	CONFS PCBOARD

CONFS SYSOP

III. OPERATIONS

▪	Operation of E.F.R. is easy. There are however some command line switches that are important to the successful operation of the program. The command line switches are discussed in section 5.

WARNING WARNING WARNING

PLEASE back up your data before you begin operating this program. E.F.R. has the capability of deleting files, and altering you BBS DIRxx Files. This way if you are not satisfied with the operation of the program, all you lost is a little time.

To execute E.F.R. you should follow the steps in section 2, installing the program and necessary files to the directory the program will operate from, and configuring your program to suit your needs. From the DOS command line or from your EVENT.SYS file type the following;

C:\PCB> expired expired.cfg /option1 /option2 /option3 etc...

As you can see the programs operation is quit simple, and non-interactive. That means that the program can run without operator intervention. Upon successful completion of the program you are returned to the DOS prompt, or control is relinquished to the calling program. If printed output is expected during operation, make sure that your printer is turned on, and on-line for printing. If you specify that you want a report, but not printed, the program will generate your file in the location specified in your configuration file. improper information placed on the command line at the time of the programs execution will cause an error condition, and the program will abort with an error message that tells you what the problem was that occurred.

IV. OUTPUT

▪	Output from E.F.R. comes in the form of a DIRxx text file description. Each page is formatted to 60 lines per page, which includes the header, and footer with page number. Below is a sample of what is generated by the program in the report file.

File created Tuesday February 19, 1991 at 1:16:42 p.m.

********** All files are 730 days old or more. ***********

QMV42.ZIP 57261 02-01-88 A Pcbfiler like utility

| File is 3 year(s) old or more.

There is also a callers log entry that might be made if desired, that looks something like what follows. The reason I same looks something like, is because the items placed into this file as the program evolves, may change, but this is what it is as of right now;

**************************************************************

02-19-91 (22:59) E.F.R. Ver 1.0 Expired File Processing.

224 Total files were processed.

02-19-91 (22:59) E.F.R. Ver 1.0 Processing Completed

**************************************************************

V. COMMAND LINE SWITCHES

▪	There are 8 command line switches that may be used to start E.F.R. At least one of these switches are required, they do not have to be in any special order, and they are not case sensitive. These switches are placed on the command line *AFTER* the name of the configuration file is specified. For example;

C:\PCB> expired expired.cfg /option1 /option2 /option3 etc..

These options are spelled out for you here, and may be reviewed anytime you run E.F.R. If you desire to view the command line switches through the program, you can either type the name of the program on the DOS command line without any parameters, or you may use the switch "/?" after the configuration file name. E.F.R. will at this time display the options to you on the screen. Remember that all of the command line switches require a leading slash as demonstrated above.

1) /REPORT - is an option that is used to tell E.F.R. that you wish to have some type of output from the program, whether it be printed or file. If you do not specify this option on the command line, no output reports are generated. No action is taken on your Files or DIRxx entries.

2) /REMOVE - is an option that tells E.F.R. to totally delete any files which it finds meet the criteria you have set, in regard to the number of days aged a file may be. Files listed in your EXCLUDE file are exempt from this action. Once the file is deleted, E.F.R. will remove the entry from your DIRxx file listing for you. If you use this option, be aware that if it comes across any DIRxx entry that has "OFF-LINE" or "DELETED" in the date field, E.F.R. will remove that entry from your DIRxx file. In the example below, the file would be deleted from your DIRxx entry.

QMV42.ZIP 57261 OFF-LINE A Pcbfiler like utility

| File is 3 year(s) old or more.

3) /MOVE - is an option that will move qualified files to the off-line directory you specified in your configuration file, then place the words "OFF-LINE" in the date field of your DIRxx file listing entry. You may then backup your off-line directory or delete the files off.

4) /CONF - is an option that will force E.F.R. to ONLY process the conferences you have listed in you configuration file, bypassing the Main Board files all together.

5) /NOCONF - is an option opposite of /CONF in that it will ONLY process your MAIN BOARD files, bypassing your conference files.

6) /? - is an option that will display these switches to you anytime you run E.F.R.

7) /TRUNC - This option will allow you to specify that a file not be deleted completely, but set to ZERO Bytes, so that a duplicate file cannot be uploaded. The entry made to your DIRxx file is made in the date field portion of the description, and it is changed to DELETED.

8) /PRINT - This option allows you to temporarily override the report output so it can be sent to the printer instead of the disk file.

VI. COMMENTS

▪	I have been working on E.F.R. for a long time...in fact.. I got the idea from logging onto Salt Air. I work for a living, and program for a hobby. I have released this program as "FREEWARE" as it is classified. This program is fully functional, and not CRIPPLED in any way, shape, or form. I *DO NOT* want any money for this program. All I ask in return for it's use is some feedback, or suggestions for enhancements, and that you drop me a line on my free access BBS, letting me know that you are using it. I have been a PCBoard(tm) SysOp since version 10.0 was released, and the reason I wrote my own program was because as a SysOp, I was tired of being nickeled and dimed to death for utilities for the BBS. That's what inspired me to start writing my own programs, and release them without charge. I am not against anyone making a few bucks from a user of the BBS, but I personally feel (and I'm probably not alone) that SysOps already have a HUGE investment into these systems and can not continue to shell out money for every program that makes the job just a little easier, each time one comes along.

Please remember that I am not a professional programmer, but a mere novice. Any comments/suggestions that you Pro's can make to help me learn sound programming techniques would be appreciated.

This is a Copyrighted(c) program. It cannot be altered, disassembled, decompiled, or hacked without my expressed written consent. I maintain the rights to the source code, and will support the program as long as there is an interest in it. I cannot be responsible for any damage that may result from the use of this program.

Though the program appears to be "BUG FREE" there maybe something that I did not catch. This program is in it's initial stage.....As Sam Smith say's -> "You've Been Warned!".

This ZIP file was assembled using the Authenticity Checking Capabilities of PKZIP(tm) with a label of; "The Computer Store BBS -> 904-797-4824". If Authenticity verification is not present when you unzipped this file, or the Authenticity check does not show the above, then DO NOT use it, as it has been altered, and may not be safe to use.

SUPPORT

▪	As long as there is interest in this program, I will be more than happy to assist you in any way possible to operate this program successfully. I know that I am not a good DOC writer, and many things in this manual might be unclear, so you may call my BBS 24 hours 7 days a week, free access. (904)794- 0063.

VII. APPENDIX

▪	Sample Configuration File;

; EXPIRED Ver 1.0 Expired File Remover for PCBoard(tm)

; (c)Copyright 1991..All Rights Reserved.

; Gary L. Bouchard SysOp, The Computer Store BBS

; St. Augustine, Florida (904)794-0063

; Sample Configuration file

;

; Lines that begin with ';' are considered comments by the program and

; ignored. To turn off a FEATURE, place a ';' in the first position of

; the line.

;

; ************************************************************************

; Location of Pcboard.Dat File.

PCB C:\PCB\PCBOARD.DAT

; ************************************************************************

; NUMDAYS - This variable specifies how many days back the program

; should go to realize that the file is expired. In other

; words, how many days old should a file be, before action is

; taken on it. Example for 3 years, multiply 365x3 which

; equals 1095.

;

NUMDAYS 730

; ************************************************************************

; REPORTFILE - Is the name of the file that is generated when a report

; would be desired. Include the full path and file name;

; (ie c:\pcb\report.fil).

;

REPORTFILE D:\TP\REPORT.FIL

; ************************************************************************

; EXCLUDE - This is the parameter you use to specify the name of your

; exclude list. E.F.R will open this file, and use it to

; check against DIRECTORIES, and FILENAMES. If you do not have

; any special files that you wish to keep the file is not

; required. This parameter should also include the path

; location and name.

;

EXCLUDE D:\TP\EXPIRED.EFR

; ************************************************************************

; PRINT - Is a parameter that can be used to print out your report file

; instead of writing in to disk. To activate this function, mearly

; remove the semicolon comment symbol, and run the program.

; PRINT

; ************************************************************************

; OFFLINE_DIR - Is the path location and name of the directory you wish

; your files to be moved to if you use the '/MOVE' option.

; Be sure to include the final slash on the DIR name.

;

OFFLINE_DIR D:\ARC\

; ************************************************************************

; DLFILE - Is the actual directories that contain the physical files.

; During execution of the program EFR builds a list of

; your physical files, in memory so it knows where to find it

; quickly if action is required on the file.

;

DLFILE c:\pcb\dl1 ; Remember that these are *NOT* DIRxx text

DLFILE c:\pcb\dl2 ; files. These are where the actual zip file

DLFILE c:\pcb\dl3 ; list located on you harddisk.

DLFILE c:\pcb\dl4

DLFILE c:\pcb\dl5

DLFILE c:\pcb\dl6

DLFILE c:\pcb\dl7

DLFILE c:\pcb\dl8

DLFILE c:\pcb\dl9

DLFILE c:\pcb\dl10

DLFILE c:\pcb\dl11

DLFILE c:\pcb\dl12

DLFILE c:\pcb\dl13

DLFILE c:\pcb\dl14

DLFILE c:\pcb\dl15

DLFILE c:\pcb\dl16

DLFILE c:\pcb\dl17

DLFILE c:\pcb\dl18

DLFILE c:\pcb\boards\dl1

DLFILE c:\pcb\boards\dl2

DLFILE d:\pcb\sysop\dl1

DLFILE d:\pcb\sysop\dl2

; ************************************************************************

; Indicates that an entry should be made to the callers log during

; execution of the program. The entry tells the Start and Completion

; times of the execution, total number of records processed and the

; total number of DIR entries that where updated.

;

CALLERLOG

; ************************************************************************

; PIPE - is a variable that allows you to specify at what position your

; secondary DIRxx line description starts at. PCBoard 14.5 is made to

; default to position 32 of the secondary line with the character '|'.

; Some users relocate their '|' character to other locations. This

; variable will allow you to specify at what position it should start.

; This is actually used to insert the Number of days old the file is

; the REPORT.FIL that is generated, and will not alter your DIRxx Entry.

;

PIPE 32

; ************************************************************************

; BAKS - A YES or NO answer indicates whether you want back-up files as

; the DIR files are processed. The Default is No.

;

BAKS YES

; ************************************************************************

; Tells EFR what conferences should be run. Here we specify the NAME

; of the Conference. EFR will read your PBCBOARD.DAT file and obtain all

; the necessary information to run the program. Dirxx files are located

; automatically, and need not be listed here...Only Conference DIRxx

; files.

;

CONFS PCBOARD

CONFS SYSOP

; ************************************************************************

▪	Sample Exclude List;

; EXPIRED Ver 1.0 Expired File Remover for PCBoard(tm)

; (c)Copyright 1991..All Rights Reserved.

; Gary L. Bouchard SysOp, The Computer Store BBS

; St. Augustine, Florida (904)794-0063

; Sample Exclude List file

;

; Lines that begin with ';' are considered comments by the program and

; ignored. To turn off a FEATURE, place a ';' in the first position of

; the line.

; ***********************************************************************

;

; c:\pcb\boards\dl1\	; This entire directory would be spared any

; processing.

DLCNT160.ZIP	; A single file that the program would verify before

; taking action on.

;4dos301a.zip	; The program is not case sensitive, but it does

; require you to spell the words correctly <grin!>.