Dec 242017
 
OS/2 2.0 archive duplicate finder. This looks for dups or near dups inside of archive files.
File ARCA130.ZIP from The Programmer’s Corner in
Category OS/2 Files
OS/2 2.0 archive duplicate finder. This looks for dups or near dups inside of archive files.
File Name File Size Zip Size Zip Type
ARCANAL.CFG 10372 2607 deflated
ARCANAL.DOC 41885 10552 deflated
ARCANAL.EXE 119108 52164 deflated
HISTORY.DOC 1601 645 deflated

Download File ARCA130.ZIP Here

Contents of the ARCANAL.DOC file













ArcAnal

Archive Analysis BBS Utility, version 1.30 User Manual

Copyright 1992, 1993 by David G. Fisher. All rights reserved.



LiveNet OS/2 BBS
1:170/[email protected], 40:4372/0 (ibmNET), 81:202/201 (OS2NET)



TABLE OF CONTENTS

Overview
What Is ArcAnal?.................................3
Disclaimer.......................................4
Disclaimer.......................................4
Description of Syntax............................5
Limitations......................................6
General Use......................................7

Using ArcAnal
The Configuration File...........................8
Common Qualifiers................................9
Building a Database.............................10
Updating a Database.............................12
Analyzing a Database and Creating Reports.......13
Description of Options.....................14
Archive Filename Report (DUPARCHIVENAMES)..16
Archive Contents Report (DUPCONTENTS)......17
Resetting Archive Dates.........................19
Displaying A Database...........................20
Purging Your File Collection....................21

Examples
Cleaning Up Your File Sections..................22



ArcAnal 1.30 Users Manual Page 3
------------------------------------------------------------------

What Is ArcAnal?

ArcAnal was originally conceived out of the necessity to recover
disk space--which was rapidly disappearing! I wanted the ability
to determine which archives were identical in the file collection
(but which had different archive file names) and which archives
are really only older versions of the same files. Using ArcAnal,
I was able to easily recover over 35MB of disk space from a 250MB
file collection, and improve the accuracy of that file collection.
The accuracy was improved by being able to select the "best"
descriptions for duplicate files, set the dates of the archives
themselves to the date of the newest file *within* the archive,
eliminate duplicate archives, and delete old versions of the same
archive/program.

In this document, I will be using the term "archive" to mean any
file that has been compressed and contains one or more files
within it. I will be using the term "contents" to refer to all
the files within an archive. Also, whenever a command is given as
an example, I will break the command apart over several lines for
readability. When this command is actually executed, however, it
would all be contained on one line.

ArcAnal will create a database of the file areas you select. The
database contains information on all your archives (*.ARJ, *.ZIP,
*.LZH, *.ZOO, etc.) in the file areas. This information includes
how many files are within the archives, and the names, dates, and
sizes of these files.

This database can then be continually updated as new files are
added to your collection, or these files are moved to different
directories. Reports on your file areas can be generated using
the database. These reports can then be used when instructing
ArcAnal which files are to be purged, have descriptions changed,
or simply left alone.

A side benefit of ArcAnal is the ability to test files before they
are released into your downloadable sections. This is especially
helpful if you are part of a File Distribution Network and want to
make sure that the file has not been previously "hatched" under a
different name, or *has* been hatched under a different name, but
has the same contents.

The most recent ARCANAL release is always available here with the
magic File Request name of ARCANAL.

Dave Fisher
LiveNet, 1:170/[email protected]
40:4372/0 (ibmNET)
81:202/201 (OS2NET)

Please don't hesitate to send suggestions. Find a bug and I'll
promptly try to make a new version, or at least a temporary work-
around, available to you.



ArcAnal 1.30 Users Manual Page 4
------------------------------------------------------------------

Disclaimer

Disclaimer

This program is shareware. There is absolutely no warranty for
this program or guarantee it will work. The user of this program
assumes all risk. While I feel confident this program will not
harm your system in any way, by using this program, you agree to
assume full responsibility for any adverse effect to your system.

PLEASE BACKUP YOUR SYSTEM! Since this program can be used to
modify files in your downloadable file sections, I strongly advise
that you make sure your entire file collection is backed up before
running ArcAnal.

While I don't demand a contribution, if you find this program
useful and would like to contribute to ongoing shareware
development, please feel free to send a contribution of $10 or
more to:

Dave Fisher
5131 East 88th Court
Tulsa, Oklahoma 74137
USA

Where applicable, all trademarks referred to here are the property
of their owners.



ArcAnal 1.30 Users Manual Page 5
------------------------------------------------------------------

Description of Syntax

Please note that any [action] command keyword or qualifier (all
/xxxx keywords) are only significant to 4 characters. Thus,
"/Config" can be expressed as "/Conf".

ArcAnal [action] [qualifiers...]

Common qualifiers to all [action] commands: Defaults

/Config = : ArcAnal.cfg
/[no]Log : NoLog
/LogFile = : None
/LogLevel = <1..4> : 4
/[no]Quiet : NoQuiet

Specific [action] commands and qualifiers:

ArcAnal BUILD DATABASE

ArcAnal UPDATE DATABASE

ArcAnal ANALYZE DATABASE
/Output= : STDOUT
/Report=(DUPARCHIVENAMES, DUPCONTENTS) : DUPARCHIVENAMES
/Include=(PATHS, DESCRIPTIONS, ADDRESSES) : No Includes
/Basenum= : 5
/Percent= : 80%
/DateMatch : NoDateMatch
/SizeMatch : NoSizeMatch

ArcAnal RESETDATES DATABASE

ArcAnal DISPLAY DATABASE

ArcAnal TEST FILE
/Database= : (first defined
database)
ArcAnal PURGE DATABASE
/Input= : None



ArcAnal 1.30 Users Manual Page 6
------------------------------------------------------------------

Limitations

The single greatest limitation of ArcAnal right now is its
availability under multiple operating systems. Currently ArcAnal
will only run under OS/2 version 2.0 or greater. This is a 32-bit
application and has the potential of consuming a great amount of
memory as it runs. It would be possible to compile the program as
a 16-bit application, and thus have it available for OS/2 version
1.3 or earlier, as well as MS-DOS, but to do so would require time
that I do not currently have since I would have to re-design some
of the data structures that can exceed the 64k segment limitation
under 16-bit operating systems.

The TEST FILE command is not yet implemented.



ArcAnal 1.30 Users Manual Page 7
------------------------------------------------------------------

General Use

The basic use of ArcAnal is as an analysis tool. To use ArcAnal
as an analysis tool with the intent to clean up your file
sections, you would take the following basic steps:

1. Define all your file sections in the ArcAnal
configuration file and assign them a Database Name.

2. Create the Database.

3. Create an analysis report.

4. Edit the report file, marking the entries you wish to
change or delete in the file sections.

5. Purge the file sections using the edited report file.



ArcAnal 1.30 Users Manual Page 8
------------------------------------------------------------------

The Configuration File

The configuration file provides ArcAnal with information
concerning default behavior, as well as definitions for you file
areas and archival programs.

The configuration file included with ArcAnal is the file that I
use on my own system. It is highly documented, and is meant to be
a companion to this document. It can be modified to reflect your
file areas and the default behaviors you wish to see ArcAnal use
(logging levels, work directories, etc).



ArcAnal 1.30 Users Manual Page 9
------------------------------------------------------------------

Common Qualifiers

The qualifiers discussed in this section can be used on any
ArcAnal command.

/Config =

This is the name of the configuration file. The default
is ArcAnal.Cfg in the current directory. You can also
define the environment variable ARCANAL_CONFIG= name> instead of using this qualifier.

/[no]Log

This qualifier will turn the logging function on and off.

/LogFile =

This qualifier defines the name of the log file.

/LogLevel = <1..4>

This qualifier defines the level of message detail in the
log file. Level 1 is the least detailed, while Level 4 is
the most verbose. The levels indicate the 'importance' of
a message, where Level 1 is the most important (usually
error messages).

/[no]Quiet

This qualifier controls whether the program should emit an
printed output. If /Quiet, the only output will be the
program copyright line and any error messages. The
default is /NoQuiet.



ArcAnal 1.30 Users Manual Page 10
------------------------------------------------------------------

Building a Database

The database created by ArcAnal is the central aspect of the
program. ArcAnal will create three files:

[databasename].ARC

Not to be confused with the archival program ARC, this file
contains information on each archive file within your file
areas.

[databasename].CON

This file contains information on the actual contents of the
files within the archives, and is linked back to the archive
entry within the file [databasename].ARC.

[databasename].DIR

This file is a list of all the physical directories where
your downloadable files are kept, and is linked back to the
archive entry within the file [databasename].ARC.

[databasename] is an 8 character name that you define in the
configuration file.

A database definition in the configuration file consists of two
primary sections: the (1) database definition, and (2) file
sections belonging to that database. The latter section is
optional. It is possible to receive the database file another
system and perform analysis or file checks against that database.
This would primarily be used by File Networks to avoid releasing
duplicate files into the network.

The Database Definition

DatabaseName [database name]

The database is used both as the base name of the actual
database files, and also as the name used on the command
line when referencing a database. Unless you are using
HPFS and do intend on sending your database to another
system, it would be wise to keep the database name limited
to 8 characters.

DatabaseDirectory [database directory]

The database directory is the physical place your database
resides on your system. Depending upon the number of
files in your collection, it could become quite large.
For example, a database of my OS/2 file collection of
around 2400 files took a total of about 700K. My DOS
sections of around 450 files took a total of about 200K.

After the above information is defined, all the file sections that
belong to this database must be defined.



ArcAnal 1.30 Users Manual Page 11
------------------------------------------------------------------

FileSection_FILESBBS [file name of FILES.BBS]

This is the full path and filename of the FILES.BBS
associated with the file area. Since some systems keep
their FILES.BBS files in a different directory, both this
file and the directory must be defined separately.

FileSection_Directory [directory for downloadable files]

This is the full path where the actual files are stored in
your file areas.

There is no functional limit on the number of areas that can be
defined. However, the areas must be defined in "couplets" with
FileSection_FILESBBS first, and then FileSection_Directory last.

Once the database is defined in the configuration, execute ArcAnal
as follows to create the database:

ARCANAL BUILD DATABASE [databasename]

ArcAnal will then search each file area defined, determine if the
file is an archive that has been defined in the configuration
file, get a listing from the compressed file, and add the
information from that archive to the database.



ArcAnal 1.30 Users Manual Page 12
------------------------------------------------------------------

Updating a Database

Once an initial database has been created, ArcAnal can be used to
scan the file areas for new files that are not within the
database. ArcAnal will also check to see if an archive has been
moved or deleted. If it has, it will delete the entry in the
database, and add the entry for the new file if it has been moved.

To update the database, periodically (perhaps once a day in a
scheduled event) execute the following command:

ARCANAL UPDATE DATABASE [databasename]

Execute this command for each database defined on your system that
has file areas associated with it.



ArcAnal 1.30 Users Manual Page 13
------------------------------------------------------------------

Analyzing a Database and Creating Reports

There are two types of analyses that can be performed. One on the
actual archive file names, and one on the contents of the
archives.

Originally, the analysis of a database was "disk-bound". This
means that very little of the database was read into RAM, but
instead accessed directly from the disk. The reason for this was
because the database could grow quite huge, and would consume a
great amount of RAM just to run. However, after performing an
analysis on the contents of the archives which took about 6 hours
to run on a 486/33Mhz ESDI drive system, I decided to use RAM.
Please note that if you run OS/2 with 8MB of RAM, that you very
well may be hitting the SWAPPER quite a bit. On an 486/33, 8MB
machine, ArcAnal could take up to 40 minutes on a large file
collection. On a 16MB machine, it would take a couple of minutes!

In order to execute an analysis and create a report, use the
following command:

ARCANAL ANALYZE DATABASE [databasename]
/Output= : STDOUT
/Report=(DUPARCHIVENAMES, DUPCONTENTS) : DUPARCHIVENAMES
/Include=(PATHS, DESCRIPTIONS, ADDRESSES) : No Includes
/Basenum= : 5
/Percent= : 80%
/[no]DateMatch : NoDateMatch
/[no]SizeMatch : NoSizeMatch



ArcAnal 1.30 Users Manual Page 14
------------------------------------------------------------------

Description of Options

/Output=

This is the file name of the report to produce. If a
report file name is not specified, "standard out" (i.e.,
the screen) will be used.

/Report=

This is the type of report/analysis desired.
DUPARCHIVENAMES will create a report on the actual archive
file names. DUPCONTENTS will create a comparison report
of all files against the files INSIDE the archive.

/Include=

This qualifier allows you to specify what additional
information you wish to be listed with each file entry in
the report.

PATHS

This will add the physical path name where the archive
resides on the disk at the end of the line entry in the
report.

DESCRIPTIONS

This will add the description as found in the FILES.BBS of
the file at the end of the line entry in the report.
Please be sure to use an editor that can accept VERY long
lines if you use this option!

ADDRESSES

This will add the address location of the entry in the
Database for the archive information at the end of the
line entry in the report. If you decide to use this
report file as the input to the PURGE command of ArcAnal,
then this option is required.

/Basenum=

This is only relevant for the DUPARCHIVENAMES report. It
indicates how many characters of the filename to consider
"significant". Thus, if /Basenum is 3, all files that
begin with the first 3 same letters will be grouped
together in the report.

/Percent=

This is only relevant for the DUPCONTENTS report. It
indicates how "close" a match is to be listed. For
example, if you only want archives that match by at least
90%, then set /Percent to 90. Unless /DateMatch or



ArcAnal 1.30 Users Manual Page 15
------------------------------------------------------------------

/SizeMatch is indicated, only file names will be used for
the percent threshold.

/DateMatch

This is only relevant for the DUPCONTENTS report. This
indicates that you also want to use the dates of the files
when comparing the "percentage match". Thus, if /Percent
is 90, and your specify /DateMatch, then only files that
match 90% of the filenames as well as 90% of the dates on
these files will be listed.

/SizeMatch

This is only relevant for the DUPCONTENTS report. This
indicates that you also want to use the sizes of the files
when comparing the "percentage match". Thus, if /Percent
is 90, and your specify /SizeMatch, then only files that
match 90% of the filenames as well as 90% of the sizes on
these files will be listed.

The most stringent Archive Contents Report that can be created
would be one which only lists perfect matches. This report would
be produced with the following command:

ARCANAL ANALYZE DATABASE [databasename]
/Report = DUPCONTENTS
/Percent = 100
/DateMatch
/SizeMatch



ArcAnal 1.30 Users Manual Page 16
------------------------------------------------------------------

Archive Filename Report (DUPARCHIVENAMES)

This report will report how many actual archive names are similar
to N number of characters. For example, if you desire to know all
the files that all have the same first 5 characters, this report
will list them. This is helpful to identify old versions of the
same program, since most archives simply change a version number
at the end of the archive name. For example, Rob Hamerling's BBS
utility DOWNSORT (source code archive) uses the following naming
conventions:

DWNSRS54.ZIP | 83319 | 12/19/1991 20:06:00 | 14
DWNSRS53.ZIP | 81567 | 10/18/1991 22:20:00 | 20
DWNSRS55.ZIP | 88120 | 01/31/1992 20:41:00 | 16

These three files are reported as a "group" with matching file
names to 7 characters.

The fields on each line of the report are as follows:

[archive file name]

The name of the archive with no path.

[archive size]

The size of the archive file in bytes.

[archive date]

The date (last write date) of the archive.

[number of files]

The number of files within the archive.

[additional included information]

Depending upon the /Include option, there may also
additional information at the end of the line.



ArcAnal 1.30 Users Manual Page 17
------------------------------------------------------------------

Archive Contents Report (DUPCONTENTS)

This report is much more extensive than the 'Archive Filename
Report'. This analysis will compare the contents of each archive
against the contents within all other archives in the database.
It will report on all the "best matches". Matches are determined
by the amount of "likeness" the files are to files within other
archives. This "likeness" is expressed as a percentage. Thus, if
ARCHIVE A is like ARCHIVE B by 82%, this means that 82% of the
files in ARCHIVE A match ARCHIVE B. Thus, if there is a 100%
match, this means one of two things:

ARCHIVE A is identical to ARCHIVE B, or
ARCHIVE A is wholly contained with ARCHIVE B.

Matches less than 100% usually indicate a previous version of the
same program.

Percentage matches are given on three different aspects of the
archive:

1. Percentage likeness of filenames.
2. For all filenames that are identical, percentage
likeness of the dates of these files.
3. For all filenames that are identical, percentage
likeness of the sizes of these files.

Thus, a match of 100% of all these aspects means that, as in the
above example, the report will indicate one of the following:

"Perfect Match"

This means that all the above percentages are 100% and that
there are exactly the same number of files in each archive.
This is a "perfect match", regardless of the archive
filenames.

"Included Within"

This means that there is a 100% percent match on all the
above aspects (filename, dates, and sizes), but that there
are more files in ARCHIVE B than ARCHIVE A. Thus ARCHIVE A
is "included within" ARCHIVE B.

Thus, when comparing 'DWNSRS54.ZIP' to the database, it finds two
matching references.

DWNSRS54.ZIP | 83319 | 12/19/1991 20:06:00 | 14

DWNSRS53.ZIP | 81567 | 10/18/1991 22:20:00 | 20 |
100% match on filenames
0% match on file dates
14% match on file sizes

DWNSRS55.ZIP | 88120 | 01/31/1992 20:41:00 | 16 |
100% match on filenames
7% match on file dates



ArcAnal 1.30 Users Manual Page 18
------------------------------------------------------------------

14% match on file sizes

The fields on each line of the report are as follows:

[archive file name]

The name of the archive with no path. This will be either
the "Source" archive (i.e., the first name listed in the
group), or the "Match" archive (all other files in the
group) that match the source archive.

[archive size]

The size of the archive file in bytes.

[archive date]

The date (last write date) of the archive.

[number of files]

The number of files within the archive.

[percent file name match]

The percentage of file names within the archive that match
the Source archive.

[percent file date match]

The percentage of file names with the same file name and
date within the archive that match the Source archive.

[percent file size match]

The percentage of file names with the same file name and
size within the archive that match the Source archive.

PLEASE NOTE: The above three percentages may be replaced
with the following keywords: "Perfect Match" or "Included
Within".

[additional included information]

Depending upon the /Include option, there may also
additional information at the end of the line.



ArcAnal 1.30 Users Manual Page 19
------------------------------------------------------------------

Resetting Archive Dates

A side benefit of having all the archive information "at your
fingertips" is the ability to reset the dates on the archives to
something more appropriate. Many times the "true" date of the
archive becomes lost during the uploading of a file, or transfer
of the file through a network. Thus, ArcAnal can stamp the date
of the archive with the date of the newest file WITHIN the archive
with a valid date. I say "valid" since, in the process of writing
this program, I have found many archives with incorrect dates
and/or times. Some archives had files within them that were dated
years into the future, while others had files that were stamped
with the time "02:62" where "62" was in the minutes field. If
ArcAnal cannot find any files with a valid date, then it will to
attempt to change the date on the archive.

To execute ArcAnal to time stamp the archives, issue the following
command:

ARCANAL RESETDATES DATABASE [databasename]
/LastWrite
/Creation

Description of Options

/LastWrite
/Creation

Under HPFS, most programs and commands, such as DIR,
display the "last write" date of a file. This is the date
that the file was last modified. Some also access the
creation date. This is normally the date the program
arrived on your system. Thus, as in the case of Rob
Hamerling's program DOWNSORT, it is possible to list the
true file date, but indicate that this file is new to your
system. This is also true of Maximus. When it is
displaying "new files", it will display the date of the
"last write", but base the date search on the "creation
date" of the file.

The default for ArcAnal is /Lastwrite (reset the "last
write" date) and /NoCreation (do not reset the "creation
date" of the file).



ArcAnal 1.30 Users Manual Page 20
------------------------------------------------------------------

Displaying A Database

During the testing of ArcAnal, I wanted to see what the database
said was really in the database. So, being naturally curious, as
well as suspicious, I created the following command:

ARCANAL DISPLAY DATABASE [databasename]



ArcAnal 1.30 Users Manual Page 21
------------------------------------------------------------------

Purging Your File Collection

At this point, I will assume that you have read the sections on
building a database and creating an analysis report. You must do
these two things before you can purge and/or update your file
collection based on the information in your analysis report.

Purging your file collection is easy. It is so easy, in fact,
that I strongly urge you to perform a full backup of your file
collection before executing this command. In order to use a
report as input to the PURGE command, you must be sure to specify
/Include=(Addresses,...), or else ArcAnal will not know where to
find the archive information in the database.

BE SURE TO ONLY USE CURRENT REPORTS! If you use a report file
that was based on an old database, the address locations of file
entries may have changed. There is "safety net" logic to attempt
to stop this from happening if you use an out-dated report, but it
is still a good idea to make sure that your report file matches
the current database.

You will notice that each report created by ArcAnal has two
leading blanks before each line. This is so you can put an
"action character" before a line entry in the report. The action
characters available are as follows:

"-" (minus sign)

If you put a minus sign in the first column of the report,
ArcAnal will purge the file from the system. This means
that it will delete the entry from the database, delete
the actual physical file, and remove the entry from the
FILES.BBS. In other words, it is GONE!

"+" (plus sign)

If you put a plus sign in the first column of the report,
ArcAnal will update the file description of the entry.
This means that you must specify
/Include=(descriptions,...) when creating the report.
This is handy when you have several matches for a file,
and want to choose the "best" file description for the
entry. Simply "cut-and-paste" the description from one of
the other entries that are going to be deleted from your
system to the file line that you are keeping. ArcAnal
will update the appropriate FILES.BBS.

It is very important to make sure that your editor is in
"overwrite" mode. DO NOT CHANGE THE COLUMN ALIGNMENT of the
report. ArcAnal will become confused as to where the actual
archive file name is located.



ArcAnal 1.30 Users Manual Page 22
------------------------------------------------------------------

Cleaning Up Your File Sections

The following is an example of exactly how I used ArcAnal to find
duplicate archives and purge/update my file sections.

1. Define all the file sections.

Look with the ArcAnal.Cfg file included with the program.
Within it you will find all the definitions for my file
sections called LocalOS2 (case is not significant). File
sections must first be defined before creating a database.

2. Create the Database.

I executed the command:

ARCANAL BUILD DATABASE LocalOS2

On a 2400 file collection, this took about 30 minutes to
run. ArcAnal must execute the archive program for each
file, get the listing, and update the database with this
information.

3. Reset all the dates on the archive files.

In order to produce an accurate report, I reset all the
archive dates. This made it much easier to identify
archives which were really older than others which were
"close matches".

4. Create an analysis report.

I executed the command:

ARCANAL ANALYZE DATABASE LocalOS2
/Output=OS2.RPT
/Report=dupcont
/Include=(path,desc,address)
/Percent=100

5. Edit the report file

Here are sections of the report OS2.RPT and how I changed
them. Please note that I am not including the /Include
information that was at the end of each file line since it
would not fit within an 80 column document. But when you
execute ArcAnal, you will see all the path, address, and
description information after column 80.



ArcAnal 1.30 Users Manual Page 23
------------------------------------------------------------------


Example sections from report file OS2.RPT:

==============================================================================
Archive Contents Analysis Report

Report contents: A comparison of all archives against one another based on
actual contents of the archive, regardless of archive
filename. Content match of at least 100% will be reported.

Selection for 100% threshold will be based on:
File names within the archives
==============================================================================

- Source : DLC_221.ARJ | 12600 | 01/15/1992 23:04:12 | 3
- Matches: DLC_223.ARJ | 14437 | 02/15/1992 15:14:24 | 3 | 100%/ 0%/ 0%
- DLC_230.ARJ | 16049 | 06/24/1992 01:26:40 | 3 | 100%/ 0%/ 0%
DLC_243.ARJ | 28476 | 08/26/1992 14:31:18 | 6 | 100%/ 0%/ 0%
------------------------------------------------------------------------------
- Source : LASTCALL.ZIP | 6360 | 11/07/1991 21:06:00 | 2
+ Matches: LASTCAL2.LZH | 10907 | 12/23/1991 20:51:28 | 3 | 100%/ 0%/ 0%
------------------------------------------------------------------------------

The above are two good examples of how ArcAnal identifies older
versions of the same program. Notice that I marked 'LASTCAL2.LZH'
with a plus sign. I liked the description on 'LASTCALL.ZIP', which I
marked for deletion, so I replaced the description at the end of the
line (not shown here) of 'LASTCAL2.LZH' with the description of
'LASTCALL.ZIP'.

- Source : ANSIFUN.ZIP | 5018 | 09/18/1990 19:13:00 | 1
+ Matches: REXXANSI.ZIP | 5024 | 09/18/1990 19:13:00 | 1 | Perfect Match
------------------------------------------------------------------------------

The above is a good example of two files which are internally
identical, but have different archive names.

- Source : TIME10.ZIP | 7366 | 03/04/1990 17:18:00 | 2
Matches: FREEMEM2.ZIP | 17723 | 03/04/1990 17:18:00 | 4 | Included Within
METZ.ZIP | 18432 | 03/04/1990 17:18:00 | 4 | Included Within
------------------------------------------------------------------------------

The above is a good example of a program that is wholly included
within another archive. Probably at some point someone extracted only
the 'TIME' utility from the set and sent it out on the network,
instead of keeping all the utilities together in one archive.

- Source : EABK10.ZIP | 53526 | 04/21/1992 18:37:00 | 3
- Matches: EABK101.ZIP | 53526 | 04/21/1992 18:37:00 | 3 | Perfect Match
EABK20.ZIP | 106147 | 07/09/1992 19:50:00 | 4 | 100%/ 0%/ 0%
------------------------------------------------------------------------------

The above is interesting in that supposedly version 1.0 and 1.01 are
different, as would be expected from their different version numbers,
but are really identical when looking at the contents of each archive.
'EABK20.ZIP' is clearly an update, since 100% of the file names are
the same, but there is no match on date or file size.



ArcAnal 1.30 Users Manual Page 24
------------------------------------------------------------------


- Source : KEYLOCKS.ZIP | 11624 | 04/03/1992 19:26:00 | 2
- Matches: KLOCKS.ZIP | 11624 | 04/03/1992 19:26:00 | 2 | Perfect Match
+ KLOCKS10.ZIP | 12203 | 04/03/1992 19:26:00 | 2 | Perfect Match
------------------------------------------------------------------------------

The above is a perfect example of releasing several archives into a
file distribution network, but changing their file names. Notice I
deleted two archives, and updated the description on the one I kept.

- Source : MEMSIZ.ZIP | 50137 | 02/17/1992 12:46:00 | 15
- Matches: MEMSZ124.ZIP | 50036 | 04/03/1992 11:17:00 | 15 | 100%/ 67%/ 80%
MEMSZ125.ZIP | 50095 | 05/15/1992 10:09:00 | 15 | 100%/ 67%/ 80%
------------------------------------------------------------------------------

The above is another good example of multiple versions of the same
program, where 100% of the file names matched identical, 67% of the
file dates were the same, and 80% of the file sizes were the same.


Source : BOOT20.ZIP | 27982 | 08/21/1992 08:33:00 | 5
- Matches: SE20BOOT.ZOO | 25661 | 08/21/1992 08:33:12 | 5 | Perfect Match
------------------------------------------------------------------------------

Once again, regardless of archive file name or archive TYPE, archives
with identical contents are matched.

- Source : KRNL0617.ZIP | 455907 | 06/19/1992 16:38:00 | 5
Matches: OS2KRNL.ZIP | 455907 | 06/19/1992 16:38:00 | 5 | Perfect Match
------------------------------------------------------------------------------

Here is a very good example of a perfect matched file, and how ArcAnal
can save you quite a bit of room in your download areas (or prevent
something from being redundantly released within a file distribution
network).



ArcAnal 1.30 Users Manual Page 25
------------------------------------------------------------------



5. Purge the file sections using the edited report file.

Now that the report has been edited with the appropriate
"action characters" in column 1, I used this report as an
input file for ArcAnal. I executed the following command:

ARCANAL PURGE DATABASE LocalOS2
/Input=OS2.RPT

After the operation for each file marked with an "action
character" has been successfully completed, the action character
will be replaced with an asterick (*). Thus, if the purge is not
entirely successful, it can be restarted with the same report file
after the problem has been corrected.

And that's it! The file areas are purged and/or updated depending
upon the actions indicated in the report OS2.RPT.


 December 24, 2017  Add comments

Leave a Reply