KillDupeTM

KillDupeTM searches one or more disk drives for duplicate files, deleting the extra copies.

KillDupeTM is written and is being tested to run under Windows NT 3.51. It can automatically find any disk drives the system has assigned drive letters to through the FileManager Disk/Connect Drive service.

Disk drives can be searched individually or as a combined file set. The program generates a report of the files deleted and remaining duplicates. It can be operated in a "no delete" mode where it searches the drive(s), generating a report of the files that would be deleted, but not doing any of the delete operations. The reports can be formatted as batch files the user can then edit by hand to delete their choice of files if the ones selected automatically are not acceptable.

This program locates duplicates by first checking if they are the same size, rather than if they have the same name - which reduces the possibility of duplicate files hiding under pseudonyms. If two files have the same size, name and date, they are determined to be the same. If they have the same size and name, a cursory check is made to determine they are actually the same. If they are the same size but have different names and dates, their contents are more fully examined to see if they match.

Usage

Configuration File

Sample Report Output

Status & Availability

Written by: Fred Koschara
Libraries used by this program:

Return to the top of this page


Usage

Usage: KILLDUPE [option [option [...]]]

where 'option' is one of the options in the list below:

If KillDupeTM is run with no command line parameters or environment variables it recognizes, its default operation is: If an included drive list is specified with the "-d" switch that does not contain the current drive, the current drive will not be processed unless the "-a" switch is asserted to process all drives.

Command line parameters override environment settings. KillDupeTM will use the following environment variables (refer to the command line pages for descriptions and parameter formats):

Return to the top of this page


Configuration File

When a configuration file is used, its settings override any that have been set through environment or command line variables.
; File name		KillDupe.cfg
; Purpose		KillDupe.exe program control file
; Written by		Fred Koschara
; Created		August sixteenth, 1997
; Last modified		09/28/1997 @ 3:33 pm by wfk
; TAB spacing		8 characters

;++
; all comment lines (beginning with ';') are ignored by the program.
; all blank lines are ignored by the program.
; all sections are optional unless otherwise specified.
; sections may occur in the file in any order.
; unknown sections are ignored.
; entries within a section may occur in any order unless otherwise specified.
; entries in each section are optional unless otherwise specified.
; any entries not specified will default to values defined in the program code.
; unknown entries in each section are ignored.
; entry names must be spelled correctly and are case sensitive.
; no space is allowed before the '=' character.
; valid decimal numeric strings are required after the '=' for numeric entries.
; inline comments are ignored for numeric entry lines.
; string values are everything to the right of the '=' sign, except whitespace
;	right of the '=' is removed up to the first nonspace character.
;--

[program]
;++
; entries in the [program] section specify how KillDupe(tm) will perform.
;--
Delete Files=0			; FALSE == don't delete, only generate report
Prompting=1			; TRUE == prompt before modifying files
Verbose=1			; TRUE == display operation information
Quiet=0				; TRUE == suppress startup banner
All Drives=0			; TRUE == examine all drives unless excluded
Span Drives=0			; TRUE == span drives during search and delete
Interactive=0			; TRUE == operate in interactive mode
Delete Older=0			; FALSE == keep newer files, delete older ones
Threshold=0			; minimum file size (in bytes) to examine
Recursive=1			; FALSE == only process specified directory
; for the 'Include Drives' and 'Exclude Drives' entries, specify "." to ignore
;	any environment variable settings and use an empty list
Include Drives=.		; list of drive letters to include
Exclude Drives=.		; list of drive letters to be skipped
; 'Compare Mode' can be either "NORMAL" or "LONG"
Compare Mode=NORMAL
; 'Report Format' can be "NORMAL", "BATCH DELETE", "ALL DELETE" or "DATABASE"
Report Format=NORMAL
; the 'Report File' entry specifies where to write the report/batch file
Report File=\KILLDUPE.RPT
; the 'Start Directory' entry specifies where to start processing from.  If not
;	specified, all directories on all specified drives are examined.
Start Directory=.

[report]
;++
; entries in the [report] section define the format of the NORMAL report.
;--
;
;	NOTE:	The actual number of lines written to a page may be 1 or 2
;		greater than the value specified by Max Page Lines.
;
Max Page Lines=60		; maximum #/lines to write to a report page
Generate Cover=1		; generate report "cover" page
Generate Summary=1		; generate report summary page
Report Deletes=1		; list each deleted file in report
Report Saves=1			; list saved files when file(s) are deleted
Dupes By Name=1			; report remaining files with same name
Dupes By Size=1			; report remaining files with same size
Total Deleted Files=1		; report #/files that were deleted
Total Directories=1		; report #/directories processed
Total Drives=1			; report #/drives that were examined
Total Files=1			; report #/files found in the search
Total Zero Length=1		; report #/files found with zero length

[exclude directories]
;++
; directories specified without a drive are checked for on each drive.
; excluding directories prevents included files or extensions from being found.
; names are case sensitive.
; entries cannot begin with the string "..".
;--

[exclude files]
;++
; files specified without a path are checked for in each processed directory.
; names are case sensitive.
; entries cannot begin with the string "..".
;--
\AUTOEXEC.BAT
\CONFIG.SYS
\BOOT.INI
LO.BAT
WH.BAT
XP.BAT
\autoexec.bat
\config.sys
\boot.ini
lo.bat
wh.bat
xp.bat

[exclude extensions]
;++
; specified extensions are always excluded for comparison when found.
; a leading period on the specification is ignored if found.
; names are case sensitive.
; entries cannot begin with the string "..".
; entries that contain the string ".." may not produce the expected results.
;--

[remove directories]
;++
; directories specified without a drive are checked for on each drive.
; removing directories recursively deletes their contents.
; names are case sensitive.
; entries cannot begin with the string "..".
;--

[remove files]
;++
; files specified without a path are checked for in each processed directory.
; names are case sensitive.
; entries cannot begin with the string "..".
;--
WS_FTP.LOG
ws_ftp.log

[remove extensions]
;++
; files with specified extensions are always removed when found.
; a leading period on the specification is ignored if found.
; names are case sensitive.
; entries cannot begin with the string "..".
; entries that contain the string ".." may not produce the expected results.
;--
TMP
tmp

[colors]
;++
; entries in the [colors] section are ignored unless an "Interactive=1" setting
;	is present in the [program] section to operate in interactive mode.
;--
Menu Title=7
Prompt=143
Prompt Name=15
Help Message=14
Menu Background=12
Main Menu=2
Main Menu Highlight=15
Query Menu=13
Query Menu Highlight=14
Editfield Delimiters=7
Editfield Fixed=2
Editfield Begin=2
Editfield Empty=112
Editfield Modified=14
Error Border=121
Error Accent=126
Error Text=116
Error Highlight=127
Prompt Box Border=10
Prompt Box Accent=143
Prompt Box Text=14
Prompt Box Highlight=3

Return to the top of the page


Sample Report Output

These pages are extracted from the report generated by an actual run of KillDupeTM that was executed on the L5 Software computer network.

First page, showing options selected

		KillDupe(tm) Report File

	Created September 28, 1997 @ 8:03 am by KillDupe(tm) version 0.204

: -------------------------------------------------------------------------- :
Options selected:
	Included drives: C,D,E,F,N,Q,X,Z
	Excluded drives: A,B,D,H,J,K,X,Z
	Spanning drives: C,E,F,N,Q
	No-delete mode
	Reporting to C:\KillDupe\WebSample.Rpt
: -------------------------------------------------------------------------- :

: Deleted: C:\TEMP\00851280.TMP
: Deleted: C:\TEMP\00851281.TMP
: Deleted: C:\TEMP\00851639.TMP
: Deleted: C:\TEMP\00851640.TMP
: Deleted: C:\TEMP\00851975.TMP
: Deleted: C:\TEMP\00851976.TMP
: Deleted: E:\WINCODE\CHKLIST.MS
: Deleted: F:\WEBFRDLN\CURRENT\GRAPHICS\WS_FTP.LOG
: Deleted: F:\WEBFRDLN\UPLOAD\WS_FTP.LOG
: Deleted: F:\WEBFRDLN\UPLOAD\CATALOG\WS_FTP.LOG
: Deleted: F:\WEBL5DEV\UPLOAD\L5-SW\WS_FTP.LOG
: Deleted: N:\TEMP\~WRF0000.TMP
: Deleted: N:\TEMP\~WRF0001.TMP
: Deleted: N:\TEMP\~DFT1456.TMP
: Deleted: N:\TEMP\~DFT3A32.TMP
: Deleted: N:\TEMP\~WRS0005.TMP
: Deleted: N:\TEMP\~DFT1739.TMP
: Deleted: N:\TEMP\~DFT1736.TMP
: Deleted: N:\WIN3.11\SYSTEM\~CTL1546.TMP
: Deleted: N:\WIN3.11\SYSTEM\~IMA1218.TMP
: -------------------------------------------------------------------------- :
:   Saved: E:\QEMM\Q_BACKUP\FREE0004.001
:  Last written: Nov  4, 1995 @  8:00:00 am	Size: 2 bytes
: Deleted: E:\QEMM\FREEMEG.BAK
:  Last written: Nov  4, 1995 @  8:00:00 am	Size: 2 bytes
: Deleted: N:\EZCHARGE\EZCHARGE.MER
:  Last written: Dec 30, 1996 @  1:54:54 pm	Size: 2 bytes
: -------------------------------------------------------------------------- :
:   Saved: F:\WEB_PAGE\SAMPLE\INDEX.CNT
:  Last written: Mar 14, 1997 @ 11:14:42 am	Size: 2 bytes
: Deleted: F:\WEB_PAGE\SAMPLE\TEXT.CNT
:  Last written: Mar 14, 1997 @ 11:14:46 am	Size: 2 bytes
: -------------------------------------------------------------------------- :
:   Saved: C:\TD622\DRIVERS\FIRST.CFG
:  Last written: Aug  2, 1995 @  1:29:36 am	Size: 6 bytes
: Deleted: E:\TD622\DRIVERS\FIRST.CFG
:  Last written: Aug  2, 1995 @  1:29:36 am	Size: 6 bytes
: -------------------------------------------------------------------------- :
:   Saved: C:\TD622\BOOTDISK.BAT
:  Last written: Feb 10, 1995 @  3:04:36 pm	Size: 21 bytes
: Deleted: E:\TD622\BOOTDISK.BAT
:  Last written: Feb 10, 1995 @  3:04:36 pm	Size: 21 bytes
: -------------------------------------------------------------------------- :
:   Saved: Q:\WFW3.11\ACROGRAF.INI
:  Last written: Aug 29, 1996 @  5:15:58 pm	Size: 27 bytes
: -------------------------------------------------------------------------- :
	KillDupe(tm) Report File				Page    1

Duplicates remaining, sorted by size

	KillDupe(tm) Report File		Duplicates reported by SIZE
: -------------------------------------------------------------------------- :

             0 Sep 28, 1997 @  8:03:56 am C:\KILLDUPE\WebSample.Rpt
             0 Jun  9, 1997 @  9:33:30 pm E:\ICINET\EUDORA\TRASH.MBX
             0 Dec 26, 1996 @  7:10:28 am E:\ICINET\NETSCAPE\PLUG-INS\PCN\CORP\FLASH.DAT
             0 Nov  4, 1995 @  6:28:28 pm E:\INTERNET\EUDORA\MUSIC.FOL\RUSH.MBX
             0 Jun  5, 1996 @  8:19:52 pm E:\INTERNET\EUDORA\TRASH.MBX
             0 Apr  8, 1996 @  7:12:18 pm E:\WFWG3.11\NCDINFO.INI
             0 Sep 28, 1997 @  6:20:38 am E:\WFWG3.11\NDISLOG.TXT
             0 Dec 20, 1993 @  7:02:50 pm E:\vslick\win\wshell.exe
             0 Nov  4, 1995 @  6:28:28 pm F:\QUANTUM\INTERNET\EUDORA\MUSIC.FOL\RUSH.MBX
             0 Dec 17, 1996 @ 11:31:54 pm N:\DDSW\PCDOS_21.144
             0 Dec 17, 1996 @ 11:31:40 pm N:\DDSW\PCDOS_21.720
             0 Sep 17, 1997 @  2:50:32 pm N:\WIN3.11\NDISLOG.TXT
             0 Sep 17, 1997 @  4:01:28 pm N:\WIN3.11\MSDRAW.INI
             0 Nov  4, 1995 @  6:58:28 pm Q:\INTERNET\EUDORA\MUSIC.FOL\RUSH.MBX
             0 Sep 25, 1997 @  1:36:18 pm Q:\INTERNET\EUDORA\TRASH.MBX
             0 Sep  6, 1997 @  5:44:46 pm Q:\WFW3.11\NDISLOG.TXT
: -------------------------------------------------------------------------- :
             1 Jun 14, 1996 @  2:19:14 pm E:\ezcd_pro\ECDPRO.FTS
             1 Sep 26, 1997 @  4:21:26 am F:\vslick\project.slk
             1 Jul 19, 1989 @  1:23:00 am N:\123\2.2\LICENSE.000
             1 Dec 11, 1995 @  9:18:12 am N:\WIN3.11\APW_DATA\RIMDATA.DTA
: -------------------------------------------------------------------------- :
             2 Dec 26, 1996 @  7:11:54 am E:\ICINET\NETSCAPE\PLUG-INS\PCN\ENT\STATE.LST
             2 Nov 14, 1995 @  3:12:00 am E:\psp\PSPUD.FLT
             2 Nov  4, 1995 @  8:00:00 am E:\QEMM\Q_BACKUP\FREE0004.001
             2 Mar 14, 1997 @ 11:14:42 am F:\WEB_PAGE\SAMPLE\INDEX.CNT
: -------------------------------------------------------------------------- :
             6 Aug  2, 1995 @  1:29:36 am C:\TD622\DRIVERS\FIRST.CFG
             6 Aug 27, 1997 @  7:25:10 am N:\STW_WIN\DEFAULT.OV
: -------------------------------------------------------------------------- :
             7 Dec 17, 1985 @  1:15:28 pm F:\QUANTUM\BIN\BEEP.COM
             7 Sep 17, 1994 @  6:32:44 pm F:\QUANTUM\BIN\VIDEO.DAT
             7 Oct 11, 1996 @ 10:54:30 am N:\EZCHARGE\EZCHARGE.LRC
: -------------------------------------------------------------------------- :
             8 Dec 26, 1996 @  8:08:12 am E:\ICINET\NETSCAPE\PLUG-INS\PCN\CACHE\CCH.DAT
             8 Nov 18, 1996 @  2:08:00 pm N:\WIN3.11\SYSTEM\HPCOLA16.DAT
: -------------------------------------------------------------------------- :
            11 Dec 11, 1994 @  1:13:38 pm E:\QPV\DRV\STDVGA.DRV
            11 May 16, 1987 @  3:39:38 pm F:\QUANTUM\BIN\FORMFEED.COM
            11 Mar 25, 1996 @  8:56:26 pm F:\QUANTUM\BIN\SHODREAM.SED
            11 Oct 30, 1995 @ 10:11:04 am N:\EZCHARGE\EZCHARGE.VER
: -------------------------------------------------------------------------- :
            12 Jul 17, 1987 @  4:16:40 am F:\QUANTUM\BIN\CURSORON.COM
            12 Jul 17, 1987 @  4:17:04 am F:\QUANTUM\BIN\CURSROFF.COM
: -------------------------------------------------------------------------- :
            14 May 19, 1995 @  9:44:14 am E:\PLUGPLAY\DRIVERS\DOS\ESCD.RF
            14 Dec 30, 1996 @  1:54:34 pm N:\EZCHARGE\DATADIR\EZCHARGC.000
            14 Apr 20, 1995 @  8:13:10 am N:\WIN3.11\MSAPPS\PROOF\SLIDESHO.DIC
: -------------------------------------------------------------------------- :
            15 Nov 20, 1996 @ 11:32:42 am E:\ICINET\NETSCAPE\PLUG-INS\PCN\FINANCE\SYMBOLS.DAT
            15 Oct  1, 1996 @  4:00:00 am E:\ICINET\NETSCAPE\PLUG-INS\QVP\GENORDER.DAT
            15 Dec 11, 1994 @  1:13:38 pm E:\QPV\DRV\REALTEK.DRV



: -------------------------------------------------------------------------- :
	KillDupe(tm) Report File				Page  175

Duplicates remaining, sorted by name

	KillDupe(tm) Report File		Duplicates reported by NAME
: -------------------------------------------------------------------------- :

  ANTIQUEB.FOT           1322 Jul 15, 1996 @  7:10:52 pm E:\WFWG3.11\SYSTEM\ANTIQUEB.FOT
  ANTIQUEB.FOT           1322 Feb 19, 1995 @ 11:58:54 pm N:\WIN3.11\SYSTEM\ANTIQUEB.FOT
: -------------------------------------------------------------------------- :
  ANTIQUEN.FOT           1320 Jul 15, 1996 @  7:10:52 pm E:\WFWG3.11\SYSTEM\ANTIQUEN.FOT
  ANTIQUEN.FOT           1320 Feb 19, 1995 @ 11:58:54 pm N:\WIN3.11\SYSTEM\ANTIQUEN.FOT
: -------------------------------------------------------------------------- :
  APPLICAT.GRP          46669 Jun 16, 1997 @  7:03:32 pm E:\WFWG3.11\APPLICAT.GRP
  APPLICAT.GRP          20582 Jan 23, 1997 @ 10:37:42 pm N:\WIN3.11\APPLICAT.GRP
  APPLICAT.GRP           5115 Jan  7, 1997 @ 11:38:10 am Q:\WFW3.11\APPLICAT.GRP
: -------------------------------------------------------------------------- :
   ARABIAN.FOT           1308 Jul 15, 1996 @  7:10:52 pm E:\WFWG3.11\SYSTEM\ARABIAN.FOT
   ARABIAN.FOT           1308 Feb 19, 1995 @ 11:58:54 pm N:\WIN3.11\SYSTEM\ARABIAN.FOT
: -------------------------------------------------------------------------- :
  ARCHITEN.FOT           1320 Jul 15, 1996 @  7:10:52 pm E:\WFWG3.11\SYSTEM\ARCHITEN.FOT
  ARCHITEN.FOT           1320 Feb 19, 1995 @ 11:58:54 pm N:\WIN3.11\SYSTEM\ARCHITEN.FOT
: -------------------------------------------------------------------------- :
    ARROW2.GIF            824 Feb 18, 1997 @  4:34:14 pm E:\AOLPRESS\HELP\REFER\ARROW2.GIF
    ARROW2.GIF             56 Feb 19, 1997 @ 10:23:44 pm E:\AOLPRESS\HELP\TUTORIAL\ARROW2.GIF
: -------------------------------------------------------------------------- :
    ASSIGN.MBX          13966 Nov 27, 1995 @  1:32:22 pm E:\INTERNET\EUDORA\SAFETNET.FOL\ASSIGN.MBX
    ASSIGN.MBX          19980 Sep 14, 1996 @  5:56:14 pm Q:\INTERNET\EUDORA\SAFETNET.FOL\ASSIGN.MBX
: -------------------------------------------------------------------------- :
    ASSIGN.TOC           2720 Nov 27, 1995 @  1:32:22 pm E:\INTERNET\EUDORA\SAFETNET.FOL\ASSIGN.TOC
    ASSIGN.TOC           3374 Sep 14, 1996 @  5:56:14 pm Q:\INTERNET\EUDORA\SAFETNET.FOL\ASSIGN.TOC
: -------------------------------------------------------------------------- :
  ASTROBMP.DAT            288 Aug  5, 1994 @  7:24:36 pm N:\WIN3.11\ASTROBMP.DAT
  ASTROBMP.DAT            288 Aug  5, 1994 @  7:29:18 pm Q:\WFW3.11\ASTROBMP.DAT
: -------------------------------------------------------------------------- :
       ATM.INI            565 Dec 26, 1996 @  2:46:42 am E:\WFWG3.11\ATM.INI
       ATM.INI           1270 Jul 25, 1994 @  3:04:48 am N:\WIN3.11\ATM.INI
       ATM.INI            565 Aug 29, 1996 @  5:15:58 pm Q:\WFW3.11\ATM.INI
: -------------------------------------------------------------------------- :
  AUTOEXEC.ZIP          24824 Dec 11, 1995 @  5:45:44 am F:\QUANTUM\AUTOEXEC.ZIP
  AUTOEXEC.ZIP           6815 Dec 11, 1995 @  5:55:18 am N:\AUTOEXEC.ZIP
  AUTOEXEC.ZIP          25980 Aug 27, 1996 @  7:53:06 pm Q:\AUTOEXEC.ZIP
: -------------------------------------------------------------------------- :
   AUTOMEDI.AD          15441 Jan  9, 1996 @  9:10:44 am E:\BDS191\BACKDROP\PICS\AI\AUTOMEDI.AD
   AUTOMEDI.AD          16582 Jan  9, 1996 @  9:10:44 am E:\BDS191\AUTOMEDI.AD
: -------------------------------------------------------------------------- :
  AUTOMEDI.BMP          59318 Dec 28, 1995 @  4:44:48 pm E:\BDS191\BACKDROP\PICS\AI\AUTOMEDI.BMP
  AUTOMEDI.BMP          12865 Dec 28, 1995 @  4:44:48 pm E:\BDS191\AUTOMEDI.BMP
: -------------------------------------------------------------------------- :
  AUTOMEDI.WAV          18460 Aug  7, 1995 @  2:43:06 pm E:\BDS191\BACKDROP\WAVS\AI\AUTOMEDI.WAV
  AUTOMEDI.WAV          11352 Aug  7, 1995 @  2:43:06 pm E:\BDS191\AUTOMEDI.WAV
: -------------------------------------------------------------------------- :
    AUXDRV.DRV           5436 Jul  5, 1995 @  4:13:00 am E:\SB16\DRV\AUXDRV.DRV
    AUXDRV.DRV           3137 Mar  4, 1993 @  3:03:00 am N:\SB16\DRV\AUXDRV.DRV
: -------------------------------------------------------------------------- :
   AVALONB.FOT           1310 Jul 15, 1996 @  7:10:52 pm E:\WFWG3.11\SYSTEM\AVALONB.FOT
   AVALONB.FOT           1310 Feb 19, 1995 @ 11:58:56 pm N:\WIN3.11\SYSTEM\AVALONB.FOT
: -------------------------------------------------------------------------- :
   AVALONI.FOT           1314 Jul 15, 1996 @  7:10:52 pm E:\WFWG3.11\SYSTEM\AVALONI.FOT
   AVALONI.FOT           1314 Feb 19, 1995 @ 11:58:56 pm N:\WIN3.11\SYSTEM\AVALONI.FOT
: -------------------------------------------------------------------------- :


	KillDupe(tm) Report File				Page  403

Summary page

	KillDupe(tm) Report File

	Completed September 28, 1997 @ 9:21 am by KillDupe(tm) version 0.204

: -------------------------------------------------------------------------- :

                             5 Drives examined
                           927 Directories examined

                         28120 Files found, total

                            16 Zero-length files encountered

                          2234 Files were deleted
                     135075376 Bytes disk space reclaimed

.

intervening lines removed to save space

.

: -------------------------------------------------------------------------- :
	KillDupe(tm) Report File				Page  470

Return to the top of the page


Status & Availability

This program is currently under development, and is expected to be released in early 1998. The following work items remain in the development program:

Return to the top of the page


L5 Software Development

 

KillDupeTM Page / Webmaster / Last modified August 19, 2004 @ 7:22 am
Copyright © 1997-2004 by L5 Software Development. All rights reserved.