******************************************************************************
     (C) Copyright 2003 Curtis Systems Software P.C. All rights reserved.
               (last update: 2003 August 13)
******************************************************************************
CSSDIR version 1.02  August 2003 (English Version)

Table of Contents
(A.) What is CSSDIR section:
(B.) Installation section:
(C.) Examples Section:
(D.) 25 reasons to purchase CSSDIR section:
(E.) Brief Reference Style Cssdir help section:
(F.) Options Alphabetical Detail descriptions Section:
(G.) Option Table Section:
(H.) Detailed Cssdir license feature comparisons section:
(I.) Error/warning/information message codes section:
(J.) Hints, tips, issues and caveats section:
(K.) Definitions/references section:
(L.) Terms and Agreement Section:
(M.) Acknowledgments section:
(N.) Release Revisions section:
******************************************************************************

(A.) What is CSSDIR section:
****************************
CSSDIR is a significant directory/file analyzing and file searching program 
developed and copyrighted (C) 2003 software, documentation and nomenclature by 
Curtis Systems Software P.C., All rights reserved [see (L.) Terms and 
Agreement section:]. It stands for (C)urtis (S)ystem (S)oftware (DIR)ectory 
program [visit our website at www.curtisSystemsSoftware.com]. We Know of NO 
other more versatile, flexible or powerful directory program for the OS/2 or 
eCS (eComStation) operating systems. It also supports the most important 
commonly used OS/2 and eCs included cmd.exe's dir options, with a slightly 
modified syntax, i.e. -s for /s, -a for /a, -o for /o, etc., for increased 
flexibility.

some of CSSDIR powerFULL product Features include:

Limit files searched for by size and/or EA size range, user specified
search string(s), and EVEN by DATE, [includes many shortcuts i.e.
for todays files use: cssdir -Dr:.  Last n days: cssdir -Dr:-n]

find duplicate files over multiple drives or network shares and EVEN
under DIFFERENT file names, sorted by ascending/descending sizes.

find unique files amongst two or more paths, Great for file tree compares!

compute crcs on file's data and even EAs integrated with other
important file information (Great for baseline comparisons).

produce baseline snapshots to compare differences in determining exactly
what files have changed including file attributes and EVEN EAs.

produce detailed multiple sorted listings over multiple drives including
network drives and UNC in one invocation and pass (saving you time).

Exclude files with certain suffixes. i.e. .zip, .rar, .tmp, etc

All options (that make sense) can be combined to limit or increase
the files to be included or excluded in the searches. POWERFUL!
User controls how much or how little information is displayed, as well
as customize their own private shortcuts for later use! And much more.
Shareware and Pro versions. Quantity discounts available.

Professional version includes: reading filespecs out of files, reading
exclude suffixes out of files, two additional sorts (relative path and
path name), no limit on files processed, no limit on multiple reports in
one invocation and access to the snapshot compare utility (cssddiff).
******************************************************************************

(B.) Installation section:
**************************
1.) read the (L.) Terms and Agreement Section:
2.) If you accept these terms and Agreement then skip to step 3
    otherwise remove CSSDIR and its documentation from your computer(s).
3.) Create a directory called cssdir.
4.) cd to this newly created directory cssdir.
5.) Unzip the cssdir zip file you received into this directory
6.) Copy cssutil.dll to \os2\dll on the booted drive OR one found by LIBPATH  
(in config.sys OR you could setup the environment variable beginlibpath).

7.) Adjust config.sys path statement to have cssdir in its path don't forget 
to put the drive letter in there also i.e. X:\cssdir where X is drive you 
created \cssdir on. Performance may be improved by placing X:\cssdir as the 
first item in the path statement.

8.) Reboot; This will update path and libpaths, if necessary, if you don't 
know this answer then you best shutdown properly and then reboot.

9.) Copy the cssdir.key file you received into the cssdir directory and 
register the software via cssdir /Register, if you do not register you will 
only be try a limited but still quite powerful subset of cssdir features on a 
"trial" basis legally for up to a period of 30 days without purchasing a 
license [See (L.) Terms and Agreement section:].

10.) Enjoy cssdir; Also see FAQ at www.curtisSystemsSoftware.com.
*****************************************************************************

(C.) Examples Section:
**********************
20 or more cssdir examples follow (without output), and then a few more 
examples after these follow WITH output.

cssdir c:\ -Dr:. -s -a -os
  lists all files (if any) that have today's date (timestamp) sorted by 
  ascending size on drive c   

cssdir c:\;d:\;e:\ -Wc:*.c;*.h;*.cpp -Sch:"/Cmain("
  lists all non-hidden or system files having an extension of
  .c or .h or .cpp files on drives c, d, and e that contain
  the text case sensitive string 'main(' and also show summary 
  of matches per file (via default -Scho:1).

cssdir c:\;d:\;e:\ -Wc:*.c;*.h;*.cpp -Sch:"/Cmain(" -Scho:0 -Bf3
  Same as previous example but just give us the bare full file 
  specification of files that have the requested text string.

cssdir -s -a -od /$$bdrv:\ 
  lists all files on the current boot drive sorted by ascending date/time

cssdir -Dr:curweek
  lists all the (non-hidden and/or system) files that have a date of
  Monday through todays' day of the week in the current directory.

cssdir -Dr:cur3week
  same as previous example but go back up to 3 weeks in time.

cssdir -Dr:curmonth
  lists all the (non-hidden and/or system) files that have a date of
  which falls within the current month in the current directory.

cssdir -Dr:cur6month
  lists all the (non-hidden and/or system) files that have a date of
  which falls within the last six calendar months in the current directory.

cssdir -Dr:2002  -a
  lists all the files that have a date in the year 2002 in the
  current directory.

cssdir -Dr:2002-06;2003-01 *.c
  lists all the files that have a date in the month of June of 2002
  or in the month of January of 2003 and matched the dirspec of *.c
  in the current directory.

cssdir -Te2 -Dr:today
  lists all the (non-hidden and/or system) files that have a date of
  today in the current directory and show the time field in the
  HH:MM:SS format (cmd.exe's dir does not show the seconds field)!

cssdir . f:\ -Fcrc:y -Fc -Xcrc:.zip;.rar
  lists all the (non-hidden and/or system) files that reside in the current
  directory and in the root directory of the F drive while also computing 
  their crc (-Fcrc:y) and displaying their corresponding computed crc (-Fc) 
  and skips computing any files found that have suffixes of '.zip' or '.rar'
   
cssdir -Sr:2000000,$ f:\ -Wc:*.zip;*.rar;*.gz -s -os
   lists all the (non-hidden and/or system) files with an extension of .zip,
   .rar, or .gz anywhere on drive f which are 2000000 or greater in size
   (bytes) and sorts them in ascending size order.

cssdir c: -s -o-gsf -a
   lists all the files and the subdirectories of the current working directory
   on drive c, listing the files sorted by ascending size and then by 
   full filename specification, following by directories sorted by their
   full filename/directory specification.

cssdir c:\ d:\ e:\ -s -o*dups-asc -Fcrc:y -Fc -Ecrc:y -Ec -Of:c:\tmp\dupsCDE
   -X:c:\tmp\dupsCDE   

   (remember to set environment variable cssdirTMP to a scratch working
   directory before running this example or use the -Tdir: option) lists all
   potential duplicate files that span over drives c, d, and e, and output the
   results to the data file c:\tmp\dupsCDE, exclude the c:\tmp\dupsCDE from
   this analysis. [Please note depending on the drive sizes and contents this
   could take a while to finish. On approx one gigabyte boot partitions with
   about 14000 files and 850meg of data it takes about 5 minutes with a 1.2ghz
   amd processor, On a faster machine with 1733mhz (2100+) amd with 46000+
   files and over 5 gig of data I have seen it take under 10.5 minutes.] In
   the listing of possible duplicates include the CRC of the files data (-Fc)
   and include a files ea CRC (-Ec).

cssdir c:\basetree1 g:\basetree1 -s -a -Uf: -Uq
   lists all the unique files that exist between c:\basetree1 and 
   c:\basetree2 and their subdirectories and show which fields are unique.

cssdir c:\basetree1 g:\basetree1 -s -a -Uf:-D -Uq2
   lists all the unique files that exist between c:\basetree1 and c:\basetree2
   and their subdirectories ignoring timestamps in the determination of
   uniqueness, and place the unique field on the left of the listing (-Uq2)
   just before the -De field.
   
cssdir @dirspecs -Fcrc:y -Fc -Ey
   lists all the files that match the directory specifications while also 
   doing CRC computations and include those Calcuations in the listing, number
   them as well. The directory specifications are read from the dirspecs file
   found in the current directory, 1 dirspec per line. PRO license required.

cssdir c:\ -s -o*summary -List:/1
   lists the summary of drive c with all the total options fields with a
   setting of one, this include easizes totals, file size totals, archive 
   bits totals, free space on drive c, and a number of other totals.

cssdir c:\*.zip -s -o*summary
   lists the summary totals for files with the extension .zip on drive c.

cssdir c:\ -s -a -List:/oS;/oen/Fn2/Ff3
   produces two lists for all files on drive c, first listing will be sorted 
   by ascending filesize, the second will be sorted first by file extension
   and then by filename and includes the filename extension format which is
   aligned by filename and then aligned by file extension following by full
   file specification.

cssdir -Dumpo:a -a -on
   dumps all active option settings and all files in the current directory
   sorted by their filenames.

cssdir -s | more
   lists files (including subdirectories) and pipe to the paging program more

cssdir -s 2>&1 |more
   same as above but also paginate stderr: as most users would expect.

cssdirm -s
   same as above but use the included rexx shortcut script

examples with output:
*********************
[F:\os2]cssdir f:\os2\tr* -Fcrc:y -Fc
*** cssdir ver 1.01 Pro Copyright (c) 2003 Curtis Systems Software P.C. ***
searching for entries in <"F:\os2\tr*">
11-15-00  7:39p         56064 F70FA9E4         49 trace.exe
11-15-00  3:45p        232067 1E83ABF0       5583 tracefmt.exe
10-06-00  9:10p         29930 3E3C76D6          0 traceget.exe
 9-05-00  4:55p          4026 4B33DC92          0 TRADEMK.ICO
11-15-00  7:35p         34185 32148B7D          0 TREE.COM
10-06-00  9:01p          2448 557DBCA2          0 trfgrn.ico
10-06-00  9:01p          2448 0BD1F271          0 trfred.ico
10-06-00  9:10p         42054 5478CC55         49 trspool.exe
*              NumEntries:               8
*            SumFileSizes:          403222 bytes
*      free space drive F:      1029718528 bytes; 49.1% Free; 'ECOMSTATION  '

[F:\os2]set cssdirtmp=g:\tmp

[F:\os2]cssdir f:\os2\tr* -Fcrc:y -Fc -Ec -Ecrc:y
*** cssdir ver 1.01 Pro Copyright (c) 2003 Curtis Systems Software P.C. ***
searching for entries in <"F:\os2\tr*">
11-15-00  7:39p        56064 F70FA9E4         49 232FC863 trace.exe
11-15-00  3:45p       232067 1E83ABF0       5583 7E27878F tracefmt.exe
10-06-00  9:10p        29930 3E3C76D6          0        0 traceget.exe
 9-05-00  4:55p         4026 4B33DC92          0        0 TRADEMK.ICO
11-15-00  7:35p        34185 32148B7D          0        0 TREE.COM
10-06-00  9:01p         2448 557DBCA2          0        0 trfgrn.ico
10-06-00  9:01p         2448 0BD1F271          0        0 trfred.ico
10-06-00  9:10p        42054 5478CC55         49 232FC863 trspool.exe
*              NumEntries:               8
*            SumFileSizes:          403222 bytes
*      free space drive F:      1029718528 bytes; 49.1% Free; 'ECOMSTATION  '

[F:\os2]cssdir f:\os2\tr* -Fcrc:y -Fc -Ec -Ecrc:y -Ll -Ff3
*** cssdir ver 1.01 Pro Copyright (c) 2003 Curtis Systems Software P.C. ***
searching for entries in <"F:\os2\tr*">
  Date    Time      FileSize  FileCrc     EaSize   EaCrc  file specification
11-15-00  7:39p        56064 F70FA9E4         49 232FC863 F:\os2\trace.exe
11-15-00  3:45p       232067 1E83ABF0       5583 7E27878F F:\os2\tracefmt.exe
10-06-00  9:10p        29930 3E3C76D6          0        0 F:\os2\traceget.exe
 9-05-00  4:55p         4026 4B33DC92          0        0 F:\os2\TRADEMK.ICO
11-15-00  7:35p        34185 32148B7D          0        0 F:\os2\TREE.COM
10-06-00  9:01p         2448 557DBCA2          0        0 F:\os2\trfgrn.ico
10-06-00  9:01p         2448 0BD1F271          0        0 F:\os2\trfred.ico
10-06-00  9:10p        42054 5478CC55         49 232FC863 F:\os2\trspool.exe
*              NumEntries:               8
*            SumFileSizes:          403222 bytes
*      free space drive F:      1029718528 bytes; 49.1% Free; 'ECOMSTATION  '

[F:\]cssdir -o*summary f:\ -s -List:/1/Di3  -a
** cssdir ver 1.01c PRO Copyright (c) 2003 Curtis Systems Software P.C. **
searching for entries in <"F:\">
*[BEG -List:/1/Di3]*
++[  1a] <"F:\">
*[ 
'-List:/o:*SUMMARY/Uf:KDSCZBA/Ufao:ADSHR/Lp/Sl/Lh/Ll/Ab/Hb/Rb/Sb/Cb/Nd/Nf/Ne/
Ns/Ef/Se/Sf/Ts/Di3' ]*
*      archive   bit set entries:    15230
*      hidden    bit set entries:       26
*      readonly  bit set entries:      246
*      system    bit set entries:       27
*      all bits cleared  entries:       25
*          Numdirectories:            1736
*                NumFiles:           15450
*              NumEntries:           17186
*       non 0 EasizeFiles:            4431
*              SumEasizes:         9285956 bytes
*            SumFileSizes:      1051986612 bytes
*              TotalSizes:      1061272568 bytes
*      free space drive F:      1011088896 bytes; 48.2% Free; 'ECOMSTATION  '
*         size of drive F:      2097414144 bytes; 51.8% Used; E7C9-A014

[F:\]cssdir -ogs     f:\ -s -aH -Te0 -De0
*** cssdir ver 1.01 Pro Copyright (c) 2003 Curtis Systems Software P.C. ***
searching for entries in <"F:\">
        <DIR>          0 hide
        <DIR>        325 os2\ARCHIVES\03\DESKTOP\Templates\Folder!1
        <DIR>        381 Nowhere
        <DIR>        325 Desktop\Templates\Folder!1
        <DIR>        325 os2\ARCHIVES\CURRENT\DESKTOP\Templates\Folder!1
        <DIR>        325 os2\ARCHIVES\01\DESKTOP\Templates\Folder!1
        <DIR>        325 os2\ARCHIVES\02\DESKTOP\Templates\Folder!1
        <DIR>        325 os2\ARCHIVES\0x\DESKTOP\Templates\Folder!1
        <DIR>        325 os2\ARCHIVES\0x\DESKTOP\eCS System\Templates\Folder!1
            0          0 os2\OS2.!!!
            0          0 os2\L97CORRT.!!!
            0          0 MMOS2\LTCACHE.!!!
            0          0 MMOS2\MMCLSSET.!!!
            0          0 MMOS2\MMPM.!!!
            0          0 IBMLAN\NETPROG\NETMSG.!!!
            0          0 os2\L97USER.!!!
            0          0 os2\OS2SYS.!!!
          354          0 WP ROOT. SF
          660          0 io32.sys
         1024          0 os2\system\RAS\ERRSAV.DAT
         5606          0 WiseMachine.fit
        15005          0 os2dump
        21504          0 VirtualPC\WIN\Application Data\Connectix\Virtual 
PC\VPCKeyboard.dll
        44544          0 OS2LDR
        51132          0 OS2BOOT
       850253         54 OS2KRNL
*              NumEntries:              26
*            SumFileSizes:          990082 bytes
*      free space drive F:      1029718528 bytes; 49.1% Free; 'ECOMSTATION  '
******************************************************************************

(D.) 25 reasons to purchase CSSDIR section:
*******************************************
Cmd.exe's dir supported options are very similar but cssdir allows a more 
powerful syntax for dir's /a /s /b /f, with corresponding options of -a and /a,
 -s and /s, -b, -f. It also greatly improves on dir's options. The following 
document describes the Professional version of cssdir, a limited shareware and 
less expensive version, but still very powerful, [see (H.) Detailed Cssdir 
license feature comparisons section:] Some significant enhancements include: 

1.) all directories requested are treated as a group unlike most of the 
limited cmd.exe dir's sub directory by sub directory sorting basis and 
listing. Try 'cssdir -oS dir1 dir2', where dir1 and dir2 are two different 
valid directories on your system -- then notice that CSSDIR lists both 
directories combined and then sorted based on the ascending file size, 
subdirectories can also be included. We have tested data sets that have 
included over a quarter million files over multiple machines over multiple 
drives which included FAT, HPFS, CWFS, LAN, UNC referenced, and JFS. This 
sorting capability over multiple directories ALONE is reason enough to 
purchase this program. [see option -oS and -s]

2.) date range of files to include, even multiple date ranges on multiple 
separately restricted directories [see option -Dr: and -Dir:]. To find all non 
hidden and system files that have a timestamp of today's date on the complete 
f drive sorted by ascending date/time Use: 'cssdir -s f:\ -Dr:. -oD' (less the 
two enclosing '). If you want to include system and hidden files then use 
'cssdir -s f:\ -Dr:. -oD -a' or 'cssdir -s f:\ -Dr:. -oD -a*H*S*A*D*R'.

3.) limited search by file size range, and on multiple separately restricted 
directories [see option -Sr: and -Dir:]. If your eCs boot drive is f: then try 
'cssdir f:\os2\system/s;f:\ -Sr:70000,$' this will list all the files that 
have a size of 70,000 bytes or greater and exist in the f:\os2\system and its 
subdirectories and any stored in the f:\ directory.

4.) limited search by Ea size range, and on multiple separately restricted 
directories [see option -Zr: and -Dir:] To find only files with ea sizes 
greater than zero use '-Zr:1,$'.

5.) significant sorting enhancements to dir's /o option, Cssdir adds sorting 
by Full file specification, Path file specifications (similar to full file 
spec sorting but without drive letter and colon and if filespec is an UNC name 
without the \\server\share name), relative pathname, and sorting on a file's 
Ea Size ALL capable over multiple drives and filesystems. [see option -o with 
arguments F, P, R, Z].

6.) flexible multiple listings, perhaps sorting by different fields, more or 
less information to be displayed ALL in one pass over the file system(s), in 
many cases can be a huge convenient and time saver. [see option -List:, a must 
for POWER or advanced users!]

7.) comparing two or more directories and listing the unique files amongst the 
group. This option also allows the user to control whether more than just a 
unique relative pathname is in fact unique based on the user modifiable 
definition of unique. The user can include/exclude a file's date timestamp, 
filesize, filecrc, Easize, Eacrc and even individual file attributes in this 
determination of uniqueness! [See -Uf: and -Ufao:] If you have two directories 
you wish to find unique files amongst them but ignore the date timestamps in 
the compare try 'cssdir dirA dirB -Uf:-D -Fcrc:y -Fc' and at other times you 
may need to also ignore the archive and readonly attribute bit, try 'cssdir 
dirA dirB -Uf:-D -Fcrc:y -Fc -Ufao:-a-r' or 'cssdir dirA dirB -Uf:-DA -Fcrc:y 
-Fc -Ufao:-a-r'.

8.) Computation and listing files data crc values which can be used for many 
different other test scenarios. [See -Fcrc:]

9.) Computation and listing of a Files EA crc Value!!!. CSS knows of no other 
program which does this important and sometimes very critical checkout of EA 
values.  [See -Ecrc:]

10.) Exclude files in listing based on suffixes, which can include full file 
specifications and one can also read a group of such files from a exclude 
file. [see -X:  and -X:@ ] Again, You can't do this with cmd.exe's dir!

11.) sorting multiple groups of file systems sources including UNC names by 
relative pathnames. [See -oR]. When using this in conjunction with having 
'-Fn2' and '-Ff1' active can be a very fast way of deciphering commonality or 
differences amongst similar directory trees over multiple drives, directories, 
shares and networks. Again, You ain't doing with with cmd.exe's dir!

12.) extremely powerful finding duplicate files across multiple files and file 
systems, even if they're not named the same! [see -o*dups-asc and -o*dups-des],
 aids in getting rid of duplicate files, which will speed up your backups, 
etc.

13.) exclude files to do crc computations on by suffixes, which can include 
full file specifications, and one can also read a group of such files from an 
exclude crc file. [see  -Xcrc: and -Xcrc:@]

14.) Limit doing crc computations on a specific range of files size. [see 
-Srcrc:]

15.) file system snapshots which can be analyzed by the optional tool cssddiff 
which will list all changes between snapshots, With the exception of a handful 
of files which might be locked down, this snapshotting can be done on a live 
system. (It is possible that some files could be in a state of flux, and a 
subsequent invocation could immediately have different crcs with new and/or 
deleted files - but this should go without saying, the other alternative is to 
boot from another partition and/or off a cd and then invoke cssdir.)

16.) powerful symbolic user defined constants which can make use of cssdir 
more personal and have more easily remembered 'canned' invocable settings. 
[see cssdir.ini and environment variable cssdirINI]

17.) has a corresponding environment variable to cmd.exe's dir's 'dircmd' for 
user customized defaults settings. [See cssdirDEFARGS environment variable]

18.) optional settings on just what fields should be displayed and in 
different formats. Very powerful and useful. Defaults are initially set to be 
similar to cmd.exe's dir listing date, time, filesize, easize, relative 
pathname, total file sizes, total entries found, and total free space on 
drives queried.

19.) summary only option of totals information. [See -o*summary] Try
'cssdir -List:/o*summary/1/Di3' which will turn on all total fields with the 
settings to default 1 and then list the drives information free and used space 
[see '-Di3' option].

20.) Multiple wildcards over all requested or just some specific directories; 
much more concise then cmd.exe's dir approach. For instance try 'cssdir dir1 
dir2 dir3 dirn -Wc:*.c;*.h;*.txt;*.hpp' ... this would search for all files 
with the following extensions '*.c' '*.h' '*.txt' '*.hpp' over dir1, dir2, 
dir3, dirn, and you can also determine exactly which wildcard group the 
filespec was first to match or where the duplicate matched filespecs occurred 
in finding a file. [see -Foo: and -Lnu:]

21.) because there's no other known comparable directory program for the OS/2 
and/or eCs operating systems with more than 65 user selectable options and if 
you figure in overrides its well over 100 user selectable options (some with 
multiple settings) and of which you can package or 'can' your commonly used 
perhaps lengthy option settings into a single reusable friendly symbolic 
constant in the cssdir.ini file.

22.) further filter files by text matching [see -Sch: and -Scho:]. After 
filtering and gathering files cssdir then searches the found files and then 
narrows them down to only those files that have the desired text(s).

23.) output can be redirected directly into the zip.exe -@ option to quickly
back up files or a separate step with very limited manual editing which can 
then be redirected into zip.exe.

24.) multiple listings can be assigned with user customized labels. [See 
-Title: and -Etitle:], Can be handy if you wish to parse the output for other 
purposes.

25.) There are many things that cssdir can do that are either impossible or 
very difficult to do without cssdir or require a half dozen other tools and 
perhaps require repeatedly hunting and then poking at a GUI-only tool; CSSDIR 
is a great tool for system checkout and base lining. Private consulting is 
available. 

For more information visit: www.curtisSystemsSoftware.com. 
******************************************************************************

(E.) Brief Reference Style Cssdir help section:
***********************************************
Below first lists the basic online help which is reproducible for cssdir, by 
simply invoking 'cssdir -h' or 'cssdir -?', followed by a more detailed sorted 
alphabetically options list.

[start inserted cssdir -h follows]

$Help for cssdir ver 1.02 Copyright (c) 2003 Curtis Systems Software P.C.

usage follows:

cssdir -h -? [-Dir:]Dir -Wc: -s -a -Dr: -List: -Ve: -Vn: -Pt -o -Bf -b       ^
       -f -Of: -Fcrc: -Ecrc: -Tdir: -Uf: -Ufao: -X: -Xcrc: -Dumpo: -Sr:      ^
       -Zr: -Srcrc: -Nr: -Sch: -Scho: -Title: -Etitle: -Soo: -Foo: -Py:      ^
       -Uq -Ey -De -Te -Fs -Fc -Es -Ec -Ae -Rn -Fn -Ff -Df -Lp -Sl -Lh -Ll   ^
       -Ab -Hb -Rb -Sb -Cb -Nd -Nf -Ne -Ns -Ef -Se -Sf -Ts -Di               ^
       -Mf: -Lnu: -Lmcd: -Lnf: -Lifs: 

 option   default    decription
 -h                 display help
 -?                 alternative way to display help
 -Dir:    [.]       starting directory(s); use ';' for multiple -Dir: also 
                    can use/append /Wc: /s /a /Dr: /Sr: /Zr: ; Also @dirspecs

 -Wc:     []        DORA*    wild card(s); use ';' for multiple -Wc:
 -s       [CUR]     DORA*    include subDir -s is an alias for -sALL; -sCUR 
                    for current Dir; -sNO for none

 -a       [:-H-S]   DORA*    attr: -a -a[:][ADSHR-*]                          
                               '-a' is alias for -a:*A*D*S*H*R                
                               A include entries with Archive bit set         
                               D include Directory entries                    
                               S include System entries                       
                               H include Hidden entries                       
                               R include Readonly entries                     
                               * don't care attribute                         
                               - reverse above sense; do not include entries  
                               for example -H will not include hidden entries

 -Dr:     [all]     DORA*    date range(s) of files to include; use ';' for 
                    multiple -Dr: also can use -Days curweek cur2week - 
                    cur13week curmonth etc and more

 -List:   [/*]      list of order type(s); use/append ';' for multiple -List: 
                    also use/append /o /Uf: /Ufao: /Title: /Etitle: /* /= /1 
                    /0 /1F /1B /0F /0B 
                    /Uq/Ey/De/Te/Es/Ec/Fs/Fc/Ae/Rn/Fn/Ff/Df 
                    /Ab/Hb/Rb/Sb/Cb/Nd /Lp/Sl/Lh/Ll/Nf/Ne/Ns/Ef/Se/Sf/Ts/Di

 -Ve:     [0]       verbose level 0=off 1=basic ....
 -Vn:     [1]       display version 0=off 1=basic 2=all
 -Pt      [0]       ProcessTime    rec
 -o       [:NG]     LORA*    Order: -o -o[:][NEDSGFZPRW-]                     
                               N sort by filename (includes extension)        
                               E sort by extension                            
                               D sort by date and time                        
                               S sort by file size                            
                               G group directories first                      
                               F sort by full filespec including drive Letter 
                               Z sort by eaSize                               
                               P sort by pathname (less drive or share name)  
                               R sort by relative path name                   
                               W sort by short hand code (useful with -Uf:)   
                               - reverse sense of sort                        
                               for example -S will list larger to smaller     
                               also: *SUMMARY  *ASFOUND *DUPS-ASC *DUPS-DES

 -Bf      [0]       Bare -Ff fld
 -b       [0]       0=off 1=on; -b or -b1 is alias for -Bf1; with -s its -Bf3
 -f       [0]       0=off 1=on; -f or -f1 is alias for -Bf3
 -Of:     [stdout:] outfile [/NEW | /OVERWRITE | /APPEND]
 -Fcrc:   [N]       compute file crc
 -Ecrc:   [N]       compute Ea crc
 -Tdir:   []        Temp directory; Used with -Ecrc:y
 -Uf:     [*OFF]    LORA*    Unique file settings -Uf:[KDSCZBA-]              
                               '-Uf:' is alias for -Uf:KDSCZBA                
                              K compare relpath named files CaseSensitiveName 
                              D compare relpath named files date              
                              S compare relpath named files size              
                              C compare relpath named files CRC
                              Z compare relpath named files easize            
                              B compare relpath named files eacrc             
                              A compare relpath named files attrib            
                              - ignore specified following field              
                              use -Uf:-D-S-C-Z-B-A for unique filenames only  
                              add -K to also exclude filename case only       
                              differences. Use *OFF to shut off;              
                              Also see -Ufao: when using A above

 -Ufao:   []        LORA*    Unique file attrib option -Ufao:[ADSHR-]         
                               used in conjunction with -Uf:A[DSHR-]          
                               '-Ufao:' is default and alias for -Ufao:ADSHR  
                               A consider Archive   bit                       
                               D consider Directory bit                       
                               S consider System    bit                       
                               H consider Hidden    bit                       
                               R consider Readonly  bit                       
                               - ignore following bit field

 -X:      []        Suffixes of files to exclude; use ';' for multiple 
                    suffixes; Also can use @excludeFiles

 -Xcrc:   []        Suffixes of files to exclude CRC computing; use ';' for 
                    multiple suffixes; Also @excludeFilesCrc

 -Dumpo:  [N]       dump options settings Y=yes N=no A=all
 -Sr:     [all]     DORA*    Size     Range: -Sr:all=does not exclude any 
                    files; -Sr:1000000 for only files 1000000; -Sr:0,15000 
                    files under 15001 bytes; -Sr:1000,$ files 1000 bytes or 
                    larger

 -Zr:     [all]     DORA*    EaSize   Range: -Zr:all=does not exclude any 
                    files; -Zr:1000,$ ;files 1000 bytes or larger

 -Srcrc:  [all]     Size Range compute CRC: -Srcrc:all=does not exclude any 
                    files; -Srcrc:1000,$ ;files 1000 bytes or larger

 -Nr:     [0]       noReadAccess: 0=off 1=prelist noReadAccess files 2=exc 
                    noReadAccess files 3=#2 but silently 4=inc Only 
                    noReadAccess 5=#4 but silently

 -Sch:    []        searchString /Csearchstr or /I; for both strs use 
                    str1+str2 for str1 OR str2 use str1$str2 ;Also use ';' 
                    for multiple; experimental (may disappear in future 
                    versions) /D /d /B /b

 -Scho:   [1]       show SearchString hits 1=line summary 2=line summary 
                    +details (if possible)

 -Title:  []        LORA*    listTitle; for multiple lines use # for cr/lf
 -Etitle: []        LORA*    ending listTitle; for multiple lines use # for 
                    cr/lf

 -Soo:    [1]       SearchOutputOption 1=show details if nondefault           
                                       2=show details only if multspots       
                                       3=show details always

 -Foo:    [0]       foundOutputOption  1=found and totfound 2=totfound only
 -Py:     [*]       priority *=don't change; 0=low; 40=high 0-31 are in idle 
                    class 32-40 in regular class; If anything other than * is 
                    used when finished, the priority of session will be set 
                    to regular class with a zero priority

 -Uq      [0]       LORA*    Unique file  fld 1= list before -Rn fld          
                                              2= list before -Ey fld

 -Ey      [0]       LORA*    Entry        fld
 -De      [1]       LORA*    Date         fld 1=mm-dd-yy; 2=yyyy-mm-dd        
                                              3=ddMmmyy

 -Te      [1]       LORA*    Time         fld 1=hh:mm*  ; 2=hh:mm:ss  ;
 -Fs      [1]       LORA*    FileSize     fld 1=with <DIR>; 2=all numeric
 -Fc      [0]       LORA*    FileCrc      fld
 -Es      [1]       LORA*    EaSize       fld
 -Ec      [0]       LORA*    EaCrc        fld
 -Ae      [0]       LORA*    Attribute    fld 1=----; 2=----- (includes Dir)
 -Rn      [0]       LORA*    RefNum       fld
 -Fn      [0]       LORA*    FileName     fld 1=name.ext 2=name.ext formatted
 -Ff      [1]       LORA*    FullFileSpec fld 1=relpath with shCode if needed 
                                              2=relpath with shCode           
                                              3=fullfilespec                  
                                              4=relpath w/ shCode with Drhint 
                                              5=fullfilespec and shCode       
                                              6=shCode +rest of req filepath  
                                              7=#6 but also with Drhint

 -Df      [0]       LORA*    dir flag     fld 0= no trailing \ 1=trailing \
 -Lp      [0]       LORA*    ListOptionProc   rec 1=head 2=tail 3=both
 -Sl      [0]       LORA*    shorthandList    rec(s)
 -Lh      [0]       LORA*    ListingHead      rec 1=head 2=tail 3=both
 -Ll      [0]       LORA*    listingLabel     rec 1=head 2=tail 3=both
 -Ab      [0]       LORA*    ArchiveBitSet    rec
 -Hb      [0]       LORA*    HiddenBitSet     rec
 -Rb      [0]       LORA*    ReadonlyBitSet   rec
 -Sb      [0]       LORA*    SystemBitSet     rec
 -Cb      [0]       LORA*    AllClearBits     rec
 -Nd      [0]       LORA*    NumDirectories   rec
 -Nf      [0]       LORA*    NumFiles         rec
 -Ne      [1]       LORA*    NumEntries       rec
 -Ns      [1]       LORA*    numEntriesSrched rec 1=files before searchString 
                                                  2=#1 but always show        
                                                  3=#1 + bytes searched       
                                                  4=#3 but always show

 -Ef      [0]       LORA*    non 0 EasizFiles rec
 -Se      [0]       LORA*    SumEaSizes       rec
 -Sf      [1]       LORA*    SumFileSizes     rec
 -Ts      [0]       LORA*    TotalSizes       rec; filelengths + eaSizes
 -Di      [1]       LORA*    Drive info       rec 1 freeSpace for queried drs 
                                                  2 usedSpace for queried drs 
                                                  3 both 2 and 1

 -Mf:     [-X-R-2]  Miscellaneous Flags   -Mf:[BCZYXR2-]                      
                       '-Mf:' is alias for -Mf:BCZYXR2                        
                       B list files that    eaData can't be read for CRC calc 
                       C list files that  fileData can't be read for CRC calc 
                       Z list files that    eaSize can not be obtained        
                       Y list files that CRC weren't computed (>= 2gig fsize) 
                       X list files that CRC weren't computed; due to -Xcrc:  
                       R list files that CRC weren't computed; due to -Srcrc: 
                       2 list files that are 2 gig or bigger in filesize      
                       - reverse sense on above option

 -Lnu:    [L]       List/Abort if non unique file names found                 
                       A abort on first such non unique filespec              
                       L list all       such non unique filespec              
                       Y same as A but lists all before aborting              
                       0 shut off

 -Lmcd:   [Y]       List/Abort if mixedCase duplicate filespecs found         
                       A abort on first such filespec                         
                       Y same as A but lists all before aborting

 -Lnf:    [L]       List/Abort if no (qualified) files found on dirspec(s)    
                       A abort on first such dirspec/filespec                 
                       L list all such dirspec/filespec                       
                       Y same as A but lists all before aborting              
                       0 shut off

 -Lifs:   [L]       List/Abort if invalid filespec/dirspec(s)                 
                       A abort on first such dirspec/filespec                 
                       L list all such dirspec/filespec                       
                       Y same as A but lists all before aborting


 Environment variables of interest: 
   cssdirTmp     ;used for scratch space for option -Ecrc:y if -Tdir: isn't 
set
   cssdirDefArgs ;used for your default options preferences
   cssdirIni     ;used for your powerful symbolic constants

** Visit us and Register at www.curtisSystemsSoftware.com **
 Current registered license=NONE. For use beyond the 30 days trial period of 
 this software, register it or you must discontinue using it. Read the 
 enclosed terms and agreement before using and/or continuing to use. For more 
 powerful versions (paid shareware version and PRO versions), Download and 
 register from the above website; Quantity discounts available. Copyright (c) 
 2003 Curtis Systems Software P.C. All Rights Reserved.

[end inserted cssdir -h]
******************************************************************************
 
(F.) Options Alphabetical Detail descriptions Section:
******************************************************
The following describes each of the options sorted alphabetically available 
when invoking the cssdir program. DORA* stands for a global option that is 
(O)ver(R)ide(A)ble within the context of the -Dir: option. An option marked as 
such is a global option setting which can be overridden specifically via a 
leading '/' instead of a '-' within the context of the -Dir: option. DORA* 
options include /Wc: /s /a /Dr: /Sr: /Zr:. LORA* is similiar to DORA* but 
applies to the -List: option. LORA* options include /Ab /Ae /Cb /De /Df /Di 
/Ec /Ef /Es /Etitle: /Ey /Fc /Ff /Fn /Fs /Hb /Lh /Ll /Lp /Nd /Ne /Nf /Nh /o 
/Rb /Rn /Sb /Se /Sf /Sl /Te /Title: /Ts /Uf: /Ufao: and /Uq. A user can also 
indirectly overide -b -f -Bf with the LORA* /Ff option. Generally this 
overriding capability is not important unless you wish to have multiple 
listings done with only invoking cssdir once, then it can be extremely 
powerful and on large data sets much much faster. Multiple listing reports in 
one pass (or cssdir invocation) also have the advantage of consistent data 
sets that might otherwise change between invocations on a live working system. 
-List: option is really useful for the "POWER" and/or advanced users, 
especially system administrators and developers. 

Note: first the option name is given followed by [in brackets] its default 
setting and then a lengthy description. Also note the option themselves are 
case sensitive, you will get an error if you try to use -AE instead of -Ae. 
Most options start with a leading uppercase letter and are followed by all 
lowercase letter(s) and perhaps a colon. There are a few exceptions to this -a 
-s -o -b -f and perhaps a few others (that may be added in the future). 

option   default    description
-?                 Alternative to -h to display help
If '-?' is specified anywhere on the command line, a brief or reference type 
help is displayed for cssdir and all other parsing of options if any are 
ignored. Also see -h.

-a       [:-H-S]   DORA* attr: -a -a[:][ADSHR-*]
      '-a' is alias for -a:*A*D*S*H*R 
      A include entries with Archive bit set          
      D include Directory entries                     
      S include System entries                        
      H include Hidden entries                        
      R include Readonly entries                      
      * don't care attribute                          
      - reverse above sense; do not include entries. For example '-H' will not 
include hidden entries. Similar to cmd.exe's 'dir /a', it includes only those 
entries that have such attributes. To find all hidden files on drive f try 
'cssdir f:\ -s -aH' or 'cssdir f:\ -s -a*a*d*sh*r'. If you want to list the 
files' attribute bits also add '-Ae1' or '-Ae2'.

-Ab      [0]       LORA* ArchiveBitSet record
 With a setting of '-Ab1' or just '-Ab' list the total count of found files 
that have this attribute bit set.

-Ae      [0]       LORA* Attribute field 
With a setting of '-Ae1' or just '-Ae' list a files attribute bit field 
settings for each file listed without the directory attribute bit setting. 
'-Ae2' includes the directory bit setting as well as AHSR.

-b       [0]       
With a setting of '-b1' or just '-b' it is an alias for -Bf1; if the '-s' or 
'-sALL' is also active then '-b1' or '-b' is an alias for '-Bf3'. Similar to 
cmd.exe's 'dir /b'.

-Bf      [0]       Bare -Ff fld, see -Ff field description.

-Cb      [0]       LORA* AllClearBits record
With a setting of '-Cb1' or just '-Cb' list the total count of found files 
that have all their file's Attribute clear (not set).

-De      [1]       LORA* Date Field
With a setting of '-De1' or just '-De' list date field format as mm-dd-yy. If 
setting is '-De2' then use yyyy-mm-dd; if setting '-De3' then use ddMmmyy.

-Df      [0]       LORA* directory flag
With a setting of '-Df1' or just '-Df' append a trailing '\' to listed 
directory entries.

-Di      [1]       LORA* Drive information record
With a setting of '-Di1' or just '-Di' list queried drive(s) free space 
record(s); full available settings include: '-Di1' =freeSpace for queried 
drives, '-Di2' =usedSpace for queried drives, '-Di3' = both 2 and 1. With -Di1,
 -Di2, or -Di3 it also appends percentage usage or free left. Also the label 
name for the drive is listed with -Di1 and indirectly with -Di3, whereas with 
-Di2 or indirectly with -Di3 also lists the serial number for the drive.

-Dir:    [.]       starting directory or directories 
The directory or directories you wish to search for matching entries. It can 
contain normal wildcard characters or just directory names or explicit 
complete filespecs. One can use two different syntaxes for this option. Cssdir 
explicitly supports the usage of '-Dir:' or assumes implicitly anything that 
doesn't start with a '-' or '/' to be dirspec. The user can run directories 
and or filespecs together with no spaces by puting an immediate ';' between 
them. If you need to use a ';' as a filespec or directory, first escape (its 
normal meaning) with a leading '~'. Such as 'cssdir 
-Dir:c:\os2;c:\ibmlan;c:\my~;dir;c:\ibmcom'. This would search the following 
directories: 'c:\os2' 'c:\ibmlan' 'c:\my;dir' 'c:\ibmcom'. One can also append 
specific overiding options to each of the entries. 
i.e. 'cssdir -Dir:c:\os2/s;c:\ibmlan/a;c:\my~;dir/Wc:*.c~;*.h;c:\ibmcom'. This 
would search 'c:\os2' directory and all its subdirectories, search the 
'c:\ibmlan' directory including all files hidden and system, search the 
'c:\my;dir' including only files with matching wildcards '*.c' and '*.h', and 
search the c:\ibmcom directory.
[Please note the '~;' instead of just ';' in between '*.c' and '*.h' is 
necessary because otherwise it would be processed by cssdir to mean search for 
'*.h' in the current directory and not in 'c:\my;dir'. 
The following overiding defaults available to the -Dir: option include /Wc: /s 
/a /Dr: /Sr: /Zr:. Also available to use with -Dir is @dirspecs. The @dirspecs 
means one can request cssdir to open 'dirspecs' file and fetch 1 per line 
directory specifications to search for matches. The option -Dir:@ is very 
useful to compile a selected 'canned' set of files you wish to do CRCs on or 
zip into a daily backup etc. Also If a dirspec starts with a '-' then the 
explicit use of '-Dir:' will not interpret it as an option but rather as a 
dirspec. For instance, '-Dir:-searchFormyfilesthatBeginWithAhyphen'. Also if 
any dirspecs contains any spaces then enclose such dirspecs in '"' or "'". 
i.e. 'cssdir "program files"'
or 'cssdir -Dir:"program files"'.
                   
-Dr:     [all]     DORA* date range(s) of files to include; 
This option limits which files will be searched based on its last update 
timestamp. To limit it to a specific date, for instance for May 31, 2000. Use
'-Dr:2003-05-31'. For a specific range (include both endpoints [inclusive]) 
use '-Dr:2003-05-31:2003-06-15'. Also note there are many shortcuts for 
commonly used ranges: To include just the files that changed since Monday of 
the current week inclusive use '-Dr:curweek', For all files with timestamps 
since including the previous Monday inclusive use '-Dr:cur2week', ... up 
through -Dr:cur13week. For just today use '-Dr:.' or '-Dr:today'. For just the 
year 2003 use '-Dr:2003'. For the month of June in 1999 use: '-Dr:1999-06'. 
For the current month use '-Dr:curmonth'  ... up through '-Dr:cur12month'. For 
date ranges that are not continuous use something similar to this 
'-Dr:2003;2002;2001-06' this will include only files having timestamps which 
include a year of 2003, 2002, and the month of June of 2001. You can also 
append this onto a given dirspec by using '/Dr:' instead of '-Dr:' But if you 
are using multiple ranges you must escape the semicolons with '~' otherwise it 
will take the date range as a dirspec. For instance if dirspec was 'c:\' use 
'c:\/Dr:2003~;2002~;2001-06' if you do not use the '~' as such, then the 
directories searched will be 'c:\' with date range of 2003 and then the 
directory 2002 and directory 2001-06 which most likely was not intended, but 
is entirely acceptable with cssdir. You can also limit the list to the last n 
days by using '-Dr:-n', where n can be a number from 0 to 999 days.

-Dumpo:  [N]       dump options settings Y=yes N=no A=all
This option when active ('-Dumpo:y' or '-Dumpo:a') lists all the options 
current settings. The 'A' setting will also dump the contents (if any) of all 
the symbolic constants from cssdir.ini file (including automatically defined 
system ones) defined also with the other options.

-Ec      [0]       LORA* EaCrc field
This option will list the computed files Eas CRC value for each of the listed 
files. A value listed in the found files EaCrc field of '-1' means that the 
Eas could not be read, '-2' means option '-Ecrc:n' was active and therefore no 
Ea crcs were computed, a '0' value means that the file has no eas to compute. 
This option can also be specifically overidden via the '/Ec' within the 
context of the '-List:' option.

-Ecrc:   [N]       compute Ea CRC
With a setting of '-Ecrc:Y' files with eas will have a computed Ea attempted, 
That value can be displayed with listed entries using the '-Ec1' or just '-Ec' 
option.

-Ef      [0]       LORA* non 0 EasizeFiles record
With a setting of '-Ef1' or just '-Ef', this option will list the total count 
of files with Ea sizes. 

-Es      [1]       LORA* EaSize field
With a setting of '-Es1' or just '-Es', this option will list the Size of the 
Ea (in bytes).

-Etitle: []        LORA* ending listTitle
Will postfix a listing with whatever follows the '-Etitle:', for instance 
'-Etitle:"Ending of a sorted first by date ascending and then file size", also 
for multiple lines use # for cr/lf. [Also See -Title:]

-Ey      [0]       LORA* Entry field
With a setting of 'Ey1' or just '-Ey', this option numbers each file listed  
starting from 1 for easy reference.

-f       [0]       -f or -f1 is alias for -Bf3
With a setting of '-f1' or just '-f' this is similiar to cmd.exe's dir /f 
option. [also see -Bf]

-Fc      [0]       LORA* FileCrc field
With a setting of '-Fc1' or just '-Fc', this option lists a file's 32 bit 
computed CRC in hexadecimal when used in conjunction with '-Fcrc:y'. A 
negative (and also non hexadecimal) value listed in the filecrc field has 
significance: -1 indicates the listed file data could not be read, -2 
indicates option '-Fcrc:n' was active, -3 indicates file size was not in CRC 
requested range [see -Sr:], -4 indicates file was excluded based on its suffix 
[see -Xcrc:],
-5 indicates file was excluded because it sizes equals or exceeds 2 gigabytes 
bytes (because this is not supported yet!). [Also see -Mf: option].

-Fcrc:   [N]       compute file CRC
With a setting of '-Fcrc:y' file computing is requested unless some other file
options indicate to exclude otherwise [see -Srcrc: -Xcrc: -Sr: -X:] [Also see 
-Fc]

-Ff      [1]       LORA* FullFileSpec field
This option is very flexible in giving the user control in displaying a 
filespec. With a setting of '-Ff1' or just '-Ff' it will display the relative 
path filepsec and only prefix with a shCode (short hand code) if MORE than one 
dirspec/filespec was requested when invoking cssdir. '-Ff2' will always prefix 
with a shCode, '-Ff3' will list the complete filespec including drive or UNC 
file share name. '-Ff4' will list just as '-Ff2' but with the Shcode it will 
append the first 2 letters of the full file specification, usually the drive 
letter and colon, or '\\' for UNC share hint followed by an asterisk (valuable 
on long directory pathnames). '-Ff5' is same as '-Ff3' but prefixed by the 
shCode, '-Ff6' is same as '-Ff2' but no filename.ext is listed only the 
relative directory part of the pathname. '-Ff7' is same as '-Ff6' but with the 
first 2 letters of the full file specification... Brief Summary follows:
      1=relpath with shCode if needed
      2=relpath with shCode
      3=fullfilespec
      4=relpath w/ shCode with Drhint
      5=fullfilespec and shCode
      6=shCode +rest of req filepath
      7=#6 but also with Drhint
[Also see -Sl: for shCode, and -Fn]

-Fn      [0]       LORA* FileName field 
With a setting '-Fn1' or just '-Fn' the display will list just the 
filename.ext, however with the setting '-Fn2' it will format the filename less 
any extension over approximately 20 spaces and chop according (indicating a 
chop by a trailing asterisk on both the filename and ext if necessary) 
followed then by The Ext formatted over 9 spaces - Great for extension sorted 
viewing and nice to use with '-o*dups-asc' or '-o*dups-des'.

-Foo:    [0]       foundOutputOption  
This option if set to '-Foo:1' will list each dirspec result of found entries 
and a total count of found entries after all dirspec(s) are searched, if 
'-Foo:2' then only the total count of found entries will be displayed. Also if 
'-Foo:' is either 1 or 2 and multiple dirspecs have been specified to cssdir, 
the shCode associated/assigned with a FullFilespec dirspec will listed.

-Fs      [1]       LORA* FileSize field 
With a setting of '-Fs1' or just '-Fs' the filesize field for directories will 
contain the entry '<DIR>' and with a setting of '-Fs2' it will have all file 
size entries numeric and thus directory entries will contain a zero.

-h                 display help
If '-h' is specified anywhere on the command line, a brief or reference type 
help is displayed for cssdir and all other parsing of options if any are 
ignored. The significant of anywhere on the command line is so the user can 
easily adjust or recover after querying help by quickly and simply removing 
the trailing -h from the command line. Tip: you may wish to use the attached 
cssdirm.cmd rexx script to pipe any of your cssdir invocations through the 
OS/2 more.com or replace with a more powerful paging program. It can be handy 
to view the online cssdir reference help by issuing 'cssdirm -h'.

-Hb      [0]       LORA* HiddenBitSet record
With a setting of '-Hb1' or just '-Hb' lists the total count of files found 
that have their hidden attribute set. Note you will not find any if you don't 
also use -a or some derivative of -a which does not exclude hidden files in 
cssdir search process.

-Lh      [0]       LORA* ListingHead  record 
With a setting of '-Lh1' or just '-Lh' lists a listing heading settings, with 
a setting of '-Lh2' lists only a listing trailer settings at end of listing, 
with a setting of '-Lh3' lists both listing settings.

-Lifs:   [L]       List/Abort if invalid filespec/dirspec(s)                 
          A abort on first such dirspec/filespec                 
          L list all such dirspec/filespec                       
          Y same as A but lists all before aborting
With this option setting the user will be appropriately notified via cssdir 
writing to stderr: with the corresponding CSSDIRyyy: error/warning message 
code [See (I.) Error/warning/information message codes section:]. TIP: In 
automated scripts for diffing two directories -Lifs:A can be very handy for 
checking for invocation errors.

-List:   [/*]      list of order type(s)
This options allows the user to 'list' a number of orders or requests to 
process which can produce multiple lisings all in one pass over the specified 
dirspec(s). It can lead to much convenient and can take much less time than 
reInvoking cssdir multiple times over the same dirspecs. The user separates 
each requested order by a ';'. To simply get the current default setting 
listing append '-List:/*' (which is its default setting) to your current 
invocation of cssdir. To get the default listing and display all fields in the 
next listing sorted by descending date with a title of "* sorted by descending 
date*#" try appending '-List:/*;/1/o-D/Title:"* sorted by descending date*#"'.
You may all use/append /o /Uf: /Ufao: /Title: /Etitle: /* /1 /0 /1F /1B /0F 
/0B /Uq/Ey/De/Te/Es/Ec/Fs/Fc/Ae/Rn/Fn/Ff/Df /Ab/Hb/Rb/Sb/Cb/Nd 
/Lp/Sl/Lh/Ll/Nf/Ne/Ns/Ef/Se/Sf/Ts/Di. One other valuable hint even for the non 
power user is to use this option with the -Bf3 or -b or -f option which turns 
off almost all the options to produce a bare filename, but that not's what you 
ultimately want but rather you want to turn everything off fast and then 
simply turn on only what you specifically want. Try 'cssdir -Bf3 -List:/Fs'. 
Which will list only the File size field followed by the full filename 
specification.

-Ll      [0]       LORA* listingLabel record 
With a setting of '-Ll1' or just '-Ll' lists a label that identifies each of 
the fields that are to be listed at the beginning of a listing. With a setting 
of '-Ll2' instead at the beginning, the label is listed at the end of a 
listing. Use '-Ll3' to lists a label at the beginning and at the end of a 
listing.

-Lmcd:   [Y]       List/Abort if mixedCase duplicate filespecs found
          A abort on first such filespec
          Y same as A but lists all before aborting
With this option setting the user will be appropriately notified via cssdir 
writing to stderr: with the corresponding CSSDIRyyy: error/warning message 
code [See (I.) Error/warning/information message codes section:]. This 
notification could come from IFS drivers that allow access to file systems 
that can have mixed case file names. i.e. NDFS netdrive mapped to UNIX systems,
 see caveats section. Currently CSSDIR does not continue processing when such 
cases are detected.

-Lnf:    [L]       List/Abort if no files found on dirspec(s)                
          A abort on first such dirspec/filespec                 
          L list all such dirspec/filespec                       
          Y same as A but lists all before aborting              
          0 shut off
With this option setting the user will be appropriately notified via cssdir 
writing to stderr: with the corresponding CSSDIRyyy: error/warning message 
code [See (I.) Error/warning/information message codes section:]. TIP: In 
automated scripts for diffing two directories -Lnf:A can be very handy for 
checking for invocation errors.

-Lnu:    [L]       List/Abort if non unique filespec found                
          A abort on first such non unique filespec found                 
          L list all       such non unique filespec found                      
          Y same as A but lists all before aborting              
          0 shut off
With a setting of '-Lnu:L' will list during initial search all files that 
cssdir has already detected as the same file. '-Lnu:A' will abort as soon as 
it finds the first such file, '-Lnu:Y' is the same as '-Lnu:A' but lists all 
such instances before aborting. Please note, cssdir does *NOT* detect the file 
as non unique if you mapped a file via a network drive or use a UNC and also 
access the file under another method. This can lead to totals being wrong and 
files unknown to be the same file to be listed twice, as well as also report 
as potential duplicates (when using the -o*dups-asc or -o*dups-des) hence be 
careful if you are doing these tricks especially when you deleting what was 
thought to be a duplicate file. This option may also warn you when using NDFS, 
see caveat section when using NDFS ifs driver. It is recommended to leave this 
setting to have a non zero setting.

-Mf:     [-X-R-2]  Miscellaneous Flags   -Mf:[BCZYXR2-]                      
                      '-Mf:' is alias for -Mf:BCZYXR2                        
    B list files that    eaData can't be read for CRC calc 
    C list files that  fileData can't be read for CRC calc 
    Z list files that    eaSize can not be obtained        
    Y list files that CRC weren't computed (>= 2gig fsize)  
    X list files that CRC weren't computed; due to -Xcrc:  
    R list files that CRC weren't computed; due to -Srcrc: 
    2 list files that are 2 gig or bigger in filesize      
    - reverse sense on above option
With this option setting the user will be appropriately notified via cssdir 
writing to stderr: with the corresponding CSSDIRyyy: error/warning message 
code [See the list of such codes in (I.) Error/warning/information message 
codes section:]. You may redirect these messages as well as others that are 
directed to stderr: via the command line using '2> nameOffile' (don't forget 
to remove the '. Option settings B, C, and Z may occur if some files are 
locked in a filesystem that's either booted from or in use by the booted 
operating system or active application (typical files include: net.acc, 
net.aud, swapper.dat, etc), to avoid such errors one can close such 
applications before processing such files, boot from another partition, or use 
the '-X:' or '-X:@' option on such files, only later to boot separately, etc. 
to do just those few files using the '-Dir:@' option.

-Nd      [0]       LORA* NumDirectories    record
With a setting of '-Nd1' or just '-Nd' will list the count of the total of all 
directories found.

-Ne      [1]       LORA* NumEntries        record
With a setting of '-Ne1' or just '-Ne' will list the count of the total of all 
entries (directories and files) found.

-Nf      [0]       LORA* NumFiles          record
With a setting of '-Nf1' or just '-Nf' will list the count of the total of all 
files found.

-Nr:     [0]       noReadAccess: 
With a setting of '-Nr1' or just '-Nr' cssdir will prelist before and also 
list within the normal listing noReadAccess files. With '-Nr2' exclude such 
noReadAccessable files, With '-Nr3' same as '-Nr2' but silently, with '-Nr:4' 
=inc Only noReadAccess entries, with '-Nr5' same as '-Nr4' but silently.
 
-Ns      [1]       LORA* numEntriesSearched record 
With a setting of '-Ns1' or just '-Ns' will list the count of the total of all 
the entries searched when option '-Sch:' is active. '-Sch:2' always lists this 
record whether '-Sch:' is active or not. '-Sch:3' is same as '-Sch:1' but also 
list another record with the totals bytes sifted for searchstr. '-Sch:4' is 
same as '-Sch:3' but always list.

-o       [:NG]     LORA* Order: -o -o[:][NEDSGFZPR-]                        
Similar to cmd.exe's dir /o options but with a few significant enhancements.
     N sort by filename (includes extension)         
     E sort by extension                             
     D sort by date and time                         
     S sort by file size                             
     G group directories first                       
     F sort by full filespec including drive Letter  
     Z sort by easize                                
     P sort by pathname (less drive or share name)   
     R sort by relative path name      
     W sort by short hand code (useful with -Uf:)
     - reverse sense of sort                         
     for example -S will list larger to smaller      
     also: *SUMMARY  *ASFOUND *DUPS-ASC *DUPS-DES
*ASFOUND does NO sorting at all (which if your not interested in any sorting 
could speed up large data sets). *SUMMARY will give a summary only of what was 
processed. *DUPS-ASC will produce a list of (potential) duplicate files sorted 
in ascending filesize order. One should use this option with at least options 
-Fcrc:y and possibly the -Ecrc:y as well as use the -Fc and -Ec options in 
determining the files likely hood of really being a duplicate. *DUPS-DES 
reverses the sort to be descending by file size. [Please see (J.) Hints, tips, 
issues and caveats section: about duplicate files] 

-Of:     [stdout:] outfile [/NEW | /OVERWRITE | /APPEND]; 
Note one can still use > to redirect all stdout. As well as redirect both 
stdout: and stderr: to the same file with '>outfile 2>&1'. [Also see included 
examples.txt file]. One advantage to using -Of: over > is By default with the 
expection of stdout:, -Of: will not overwrite or append unless the user 
specifically appends option /OVERWRITE or /APPEND. Please note at the current 
time there is not a way to explicitly (via a CSSDIR option) to also collect 
stderr: output to a file. The issue has to do with what should be done if an 
error occurs before such a stderr option has been detected and channeled 
appropriately. The -Of: option may still be valuable in large jobs were you 
want to redirect other processing but not the stdout of cssdir. Further you 
may on such jobs be unusually surprised to get any errors to stderr, and 
really want them to be announced to the screen or via 2> redirection.

-Pt      [0]       ProcessTime record; 
With a setting of '-Pt1' or just '-Pt' lists total time to process user 
requests;

-Py:     [*]       priority 
With a setting of '-Py:*' means don't change the current command window/shell 
priority. Other settable values  are; 0=lowest; 40=highest; 0-31 are in idle 
class 32-40 in regular class; If anything other than * is used when finished, 
the priority of session will be set to regular class with a zero priority.

-Rb      [0]       LORA* ReadonlyBitSet record; 
With a setting of '-Rb1' or -Rb lists the count of the total number of files 
that have the attribute readonly bit set;

-Rn      [0]       LORA* RefNum field; 
With a setting of '-Rn1' or just '-Rn' list a reference number that is 
uniquely assigned to a given file on the current invocation of cssdir. Can be 
useful for reference purposes especially if the '-List:' option has multiple 
listing requests. [Also the refnum is related to the -o*ASFOUND options; 
-o*ASFOUND will list output as found with possibly some of the records missing 
due to options which can filter out some more records such as -Uf:] 
                    
-s       [CUR]     DORA* include subDirectories,
'-s' is an alias for -sALL; '-sCUR' for current Dir; '-sNO' for none. '-s' is 
similar to cmd.exe's /s but also allows -sNO which does not include the names 
of immediate subdirectories.

-Sb      [0]       LORA* SystemBitSet record; 
With a setting of '-Sb1' or just '-Sb' lists the count of the total number of 
files that have the attribute system bit set.

-Sch:    []        searchString 
Use a leading '/C' for case sensitive searches. Use '/CseArchStr' to find an 
exact match of 'seArchStr'. For insensitive search use a leading '/I' or 
nothing because its the default sensitivity. One can also search for two 
different strings that are in the same file by using str1+str2. i.e. to find 
'Curtis' and 'Software' with the exact case -try 'cssdir 
-Sch:"/CCurtis+/CSoftware"' and for an insensitive search try 'cssdir 
-Sch:"Curtis+Software" or 'cssdir -Sch:"/Icurtis+/ISoftware". For either 
Curtis or Software, substitute '$' for '+'. Also use ';' for multiple 
searches. Also can escape ';' and '+' and '$' with an immediate preceding '~'. 
Special Note: Experimental (may disappear in future versions) include /D /d /B 
/b - no documentation at this time - listed here so you don't get a surprise 
by accidental invoking this option with any of the experimental options on 
'-Sch:'.

-Scho:   [1]       show SearchString hits 
With a setting of '-Scho:1' and the option '-Sch:' is active list a line 
summary of of string matches file by file. With '-Scho:2' more details will be 
listed (if possible -which may not be possible if hits where found in a binary 
or similiar non ascii file).

-Se      [0]       LORA* SumEaSizes record; 
With a setting of '-Se1' or just '-Se' will list the sum of the total bytes 
consumed by the files ea sizes.

-Sf      [1]       LORA* SumFileSizes record
With a setting of '-Sf1' or just '-Sf' will list the total sizes for the found 
files, NOTE: does not include the files ea size in the total.

-Sl      [0]       LORA* shorthandList records
With a setting of '-Sl1' or just '-Sl' this will list the assigned "shorthand 
code" for a given base path name and dirspec when it was assigned. Also can be 
useful to reBuild a full file spec with these values and the relativepath 
name. Appears just before listed files (if any) and starts with '++['. Try 
'cssdir -Sl'.

-Soo:    [1]       SearchOutputOption 
This option may list the specifics of what the initial search criteria are 
currently active. If the setting is '-Soo:1' it will list such 
specifics/details only if a user has specifically overrode the default values 
of that criteria. i.e. used /Wc: /Dr: /s /a /Sr: /Zr:. With a setting of 
'-Soo:2' it will list the details only if more than one dirspec and/or '/Wc:' 
or '-Wc:' will produce more than one dirspec to be searched. With '-Soo:3' the 
details or the search criteria will be listed regardless of whether defaults 
were overridden or multiple dirspecs are to be searched.

-Sr:     [all]     DORA* Size Range: 
With a setting of '-Sr:all', this option will not exclude any files based on 
its size. '-Sr:1000000' will limit the range to files only 1000000 bytes in 
size. '-Sr:0,15000' will limit to files under 15001 bytes; '-Sr:1000,$' will 
limit files to 1000 bytes or larger.

-Srcrc:  [all]     Size Range compute CRC: 
With a setting of '-Srcrc:all' it does not exclude any files to undergo their 
CRC being computed; '-Srcrc:1000,$' will allow CRC computation to be done on 
files 1000 bytes or larger.

-Tdir:   []        Temp directory; Used with -Ecrc:y
Set this option (or Environment variable cssdirTmp) when using the -Ecrc:y 
option to a directory that is to used for scratch space. it recommended that 
it should have about 15 megabytes of scratch space, Normally no more than 1-2 
megabytes is ever used and any temp files created should automatically be 
removed when cssdir finishes. Use of the -Tdir: option if set overrides any 
setting to the environment variable cssdirTmp.

-Te      [1]       LORA* Time field 
With a setting '-Te1' or just '-Te' will list the time in the format of hh:mm* 
where * is either a p or a for pm/am. With '-Te2' the listed will have the 
time format in hh:mm:ss.

-Title:  []        LORA* listTitle
Will prefix a listing with whatever follows the '-Title:', for instance 
'-Title:"This is a sorted first by date ascending and then file size", also 
for multiple lines use # for cr/lf. [See -Etitle: also]

-Ts      [0]       LORA* TotalSizes record
With a setting of '-Ts1' or '-Ts' will list the total filelengths and eaSize 
combined usage in bytes.

-Uf:     [*OFF]    LORA* Unique file settings -Uf:[KDSCZBA-]           
    '-Uf:' is alias for -Uf:KDSCZBA    
    K compare relpath named files CaseSensitiveName 
    D compare relative path named files date              
    S compare relative path named files size              
    C compare relative path named files CRC               
    Z compare relative path named files easize            
    B compare relative path named files eacrc             
    A compare relative path named files attrib            
    - ignore specified following field              
use -Uf:-D-S-C-Z-B-A for unique filenames only. Use -K to also exclude if case 
of filename (and extension) portion is different. Use *OFF to shut off; Also 
see -Ufao: when using A above.

-Ufao:   []        LORA* Unique file attribute option -Ufao:[ADSHR-]
This option is only referenced when used in conjunction with -Uf:A[DSHR-]
   '-Ufao:' is default and alias for -Ufao:ADSHR
    A consider Archive   bit
    D consider Directory bit
    S consider System    bit
    H consider Hidden    bit
    R consider Readonly  bit
   - ignore following bit field
If one uses '-Ufao:-A' then the archive bit is ignored in determining if a 
file is unique however the directory attribute bit (D), the system attribute 
bit (S), the hidden attribute bit (H) and the readonly attribute bit (R) are 
still considered in determining if a file is unique and to be listed.

-Uq     [0]        LORA* Unique file field
With a setting of '-Uq1' or just 'Uq' it will display on each listed file a 
field positioned just left before the '-Rn' field, (with '-Uq2' its placed 
just left before the '-De' field) which describes how the file is different in 
file directories or trees, for any non-blank results one must use in 
conjunction with '-Uf:' option.

-Ve:    [0]        verbose level 0=off 1=basic ....
Useful for more details, -Ve:1 or higher will show symbolic constant 
substitutions [see cssdirini environment variable below].

-Vn:    [1]        display version 
With a setting of '-Vn:1' it will display the basic info about the version 
cssdir you are currently running. With a setting of '-Vn:2' will display all 
the version information.

-Wc:    []         DORA* wild card(s)
Very convienient to apply multiple wildcards over multiple directories. i.e. 
'-Wc:*.c;*.h;*.cpp;*.hpp' or './s/Wc:*.c~;*.h~;*.cpp~;*.hpp' works in 
conjunction with -Dir: option.

-X:     []         Suffixes of files to exclude; 
Use ';' for multiple suffixes; For example use 
'-X:.zip;.rar;os2\system\swapper.dat'. Also can use @excludeFiles

-Xcrc:  []         Suffixes of files to exclude CRC computing; 
Use ';' for multiple suffixes; For example use '-Xcrc:.zip;.rar'. Also 
@excludeFilesCrc. On some rare occassions if you have a file suffix that needs 
to contain a ';' first escape it with a '~'. i.e. '-Xcrc:spec~;files;.zip' 
would exclude filenames that end with 'spec;files' and '.zip'. Without the '~' 
it would exclude filenames that end with 'spec', 'files', and '.zip'. You also 
may want to exclude files that begin with a '@' again first escape them with 
'~'. i.e. '-Xcrc:~@xxx' would not treat '@xxx' as a file to read a list of 
exclude files but rather simply exclude filenames ending with '@xxx'. Please 
note cssdir does *NOT* check for a leading '@' within a file it is currently 
reading filenames to exclude.

-Zr:    [all]      DORA* EaSize Range
With a setting of '-Zr:all' it does not exclude any files; With a setting of 
'-Zr:1000,$' allows only files of 1000 bytes or larger in size; To list non 
zero files use '-Zr:1,$'.

Layout of horizontal fields (if appropriate options are active)
-Uq1 active: -Ey      -De -Te -Fs -Fc -Es -Ec -Ae -Uq1 -Rn -Fn -Ff
-Uq2 active: -Ey -Uq2 -De -Te -Fs -Fc -Es -Ec -Ae      -Rn -Fn -Ff
All fields can be turned on or off, for beginning users use option '-Ll' to 
label the fields and '-Lh' to show what options are active. See examples 
section and also examples.txt file.

special (shortcut) options available for the '-List:' option
/*   process order with current global settings

/=   set current options to previous order settings, if there is no previous
     order than set them to the current global settings

/1   set all of the following options to have a setting of one
     /Uq/Ey/De/Te/Es/Ec/Fs/Fc/Ae/Rn/Fn/Ff/Df 
     /Ab/Hb/Rb/Sb/Cb/Nd 
     /Lp/Sl/Lh/Ll/Nf/Ne/Ns/Ef/Se/Sf/Ts/Di

/0   same as /1 but reset or have a setting of zero

/1F  set all of the following options to have a setting of one
     /Uq/Ey/De/Te/Es/Ec/Fs/Fc/Ae/Rn/Fn/Ff/Df

/0F  same /1F but reset or have a setting of zero

/1B  set all of the following options to have a setting of one
     /Ab/Hb/Rb/Sb/Cb/Nd

/0B  same as /1B but reset or have a setting of zero

Environment variable cssdirDefArgs -is used for your default options 
preferences, if this environment exists it is first pasted (with exact 
spacing) during processing in front of any user added options of the currently 
invoked cssdir command line. And thus the user can still override them on the 
command line with One exception any dirspecs will be appended to. Use 'set 
cssdirDefArgs=' to your desired defaults settings either in config.sys or 
settable within the command window/shell you will be invoking cssdir from.

Environment variable cssdirIni - is used for your powerful symbolic constants, 
see the cssdir.ini file. In this file any lines beginning with '/$' define a 
symbolic constant that can then be used when invoking the cssdir. See the 
cssdir.ini file. To see the expansion of a symbolic constant option '-Ve:' 
must be set to 1 or greater. i.e. '-Ve:1' or 'Ve:2' will show this expansion. 
Note the user can not use symbolic named constants that start with /$$, these 
are reserved for system defined ones. Right now there are two defined: /$$bdrv 
is set to the current active booted from drive, and /$$t is for the tab 
character (might be useful to use with the -Sch: option). Symbolic constants 
names are NOT case sensitive.

Environment variable cssdirTmp - is to contain a directory name that is to 
used for scratch space for option -Ecrc:, it recommended that it should have 
about 15 megabytes of scratch space, Normally no more than 1-2 megabytes is 
ever used and any temp files created should automatically be removed when 
cssdir finishes. Use of the -Tdir: option if set overrides any setting to 
cssdirTmp.
******************************************************************************

(G.) Option Table Section:
**************************
In the following Option table:
A leading '*' denotes options can be used globally as well as specifically 
with the '-List:' option as known as a LORA* option. Each such option can be 
assigned a new global default via a leading '-' and then specifically 
overridden within the '-List:' option via a leading '/'. For instance on the 
command line you might issue: 
'cssdir -Ff1 -Fs1' 
To  specifically overide the default for a given option; Use the option in 
conjunction with the '-List:' option and then specify the option with a 
leading '/' to overide the default. i.e. '-List:/*;/Fs2', would use all the 
other defaults but would now override '-Fs1' with a new setting of '2'. You 
can also overide as many other defaults available within the context of the 
'-List:' option such as with '-List:/*;/Ff3/Fs2/De2'.

A leading # denotes options can be used globally as well as specifically 
within the context of the -Dir: option, also known as a DORA* option. Each 
such option can be assigned a new setting (overriding the default setting 
which was set with a leading '-') and then specifically overridden within the 
-Dir: option via a leading '/'. For instance on the command line you might 
issue: 
'cssdir -a'.
To specifically override the default for a given option, Use the option in 
conjunction with the -Dir: option and then append the option with a leading 
'/' to overide the default. i.e. '-Dir:./a-R',  (also could use './a-R' 
because in almost all cases '-Dir:' is not necessary) and would use all the 
other defaults but would now override '-a' with the new adjusted setting of 
'-R' applied to the current directory search. You can also override as many 
other defaults available within the context of the '-Dir:' option similarly 
such as with '-Dir:c:\/a-R/Wc:*.c/Sr:1,$/Dr:2003'.
             
a leading '-' denotes option only available on a global basis, i.e. They are 
neither a DORA* or a LORA* option.

Option table:
*************
# = also can override within -Dir:  option context, aka DORA*
* = also can override within -List: option context, aka LORA*
- = available only on global setting
(alphabetically sorted by alpha characters of options)
 -?
 #a     *Ab     *Ae 
 -b     -Bf 
 *Cb 
 *De    *Df     *Di     -Dir:  #Dr:     -Dumpo:  
 *Ec    -Ecrc:  *Ef     *Es    *Etitle: *Ey 
 -f     *Fc     -Fcrc:  *Ff    *Fn      -Foo:   *Fs      
 -h     *Hb      
 *Lh    -Lifs:  -List:  *Ll    -Lmcd:   -Lnf:   -Lnu: *Lp
 -Mf:
 *Nd    *Ne     *Nf     -Nr    *Ns:     
 *o     -Of:     
 -Pt    -Py:     
 *Rb    *Rn      
 #s     *Sb     -Sch:   -Scho: *Se      *Sf     *Sl   -Soo: #Sr: -Srcrc:
 -Tdir: *Te     *Title: *Ts      
 *Uf:   *Ufao:  *Uq 
 -Ve:   -Vn:     
 #Wc:     
 -X:    -Xcrc:  
 #Zr:     
******************************************************************************
 
(H.) Detailed Cssdir license feature comparisons section:
*********************************************************
The non registered and unlicensed use of cssdir can NOT be legally used beyond 
the 30 day "trial" period. The following Options in the non registered and 
unlicensed version are unavailable or unadjustable: -Py:, -Zr:, /Zr:, -Sr:, 
/Sr:, -Srcrc:, -Dir:@, -Xcrc:@, -X:@, -o:R, -o:P, -Ufao:, -Ecrc:, and no 
offline snapshot compare (cssddiff). The following options are limited: -Dr: 
(to one range), -Wc: (to two wildcards), /Wc: (to one wildcard override). Only 
one cssdir instance can be active at any one time. It has a startup 
unregistered license notice time delay, and is limited to filtering output 
results not to exceed 2499 file/directory entries. Only 1 report per 
invocation with the -List: is allowed. Only the first symbolic constant in the 
Cssdir initialization file is available for use by the user. Has NO support.

Registered Shareware license: Has everything the PROfessional version has with
the following exceptions: no support for -Py: (setting priority of cssdir), 
-Dir:@ (read dirspecs/filespecs from a file), -Xcrc:@ (read exclude CRC 
suffixes from a file), -X:@ (read exclude suffixes from a file), -o:R 
(relative path sorting),-o:P (fullpath sorting), no offline snapshot compare 
(cssddiff) option, limited to two reports per invocation with the -List: 
option. Limited to filtering output results not to exceed 99,999 
file/directory entries. It has Email support.

Registered PROfessional version: All features are available, that's a bunch. 
Email support questions are put at the top of the list of other non 
PROfessional licensed users. It also contains the powerful -Dir:@, -Xcrc:@, 
-X:@ and -o:R, -o:P, and snapshot compare options with multiple reports (all 
in one pass) with the -List: option. No limit on output results (except with 
regards to memory and OS/2 or eCS virtual memory management) having to do with 
the  number of file/directory entries. We have tested it with over 320,000 
such entries. Please note until further notice the snapshot compare option 
(cssddiff) is currently available only upon special request by a Pro license 
holder.
******************************************************************************

(I.) Error/warning/information message codes section:
*****************************************************
Please note that text after each CSSDIRxxx: code is representative of the type 
of error/warning/information and MAY NOT match exactly when an error is 
produced and may also be adjusted in future program revisions. 

CSSDIR100: cannot Find cssutil.dll
CSSDIR101: couldn't load cssutil.dll or other needed dll's
CSSDIR102: trial or beta software test period has expired, visit website
CSSDIR103: error reading cssdir initialization file, usually named cssdir.ini
CSSDIR104: illegal directory name or ambiguous option
CSSDIR105: Illegal option combination
CSSDIR106: user specified output file warning or error message
CSSDIR107: can not locate eCs or OS/2 eautil program
CSSDIR108: environment variable cssdirTMP or option -Tdir: needs to set 
CSSDIR109: no directory specified or other dirspec errors 
CSSDIR110: command line args processing error
CSSDIR111: misuse of '~' (tilde) escape character detected
CSSDIR112: misuse of '-List:' option
CSSDIR113: problems when using the '@' character or options
CSSDIR114: misuse of '-Sch:' option
CSSDIR115: illegal characters found; wildcards not allowed in exclude options
CSSDIR116: user hit ctrl-c or ctrl-break causing cssdir to abort
CSSDIR117: internal issue; probably out of memory
CSSDIR118: error writing to outfile; disk may be full!
CSSDIR119: error deleting cssdir created temporary files
CSSDIR120: internal error while computing CRC's
CSSDIR121: not logically possible but found internal error
CSSDIR122: internal error in IC1 or IC2, if continues serious 
           but probably user hitting ctrl-c or ctrl-break on startup
CSSDIR123: dir info util failed unexpectingly
CSSDIR124: error writing to stderr: (probably redirected and disk full)
CSSDIR125: internal logic error; please report
CSSDIR126: internal logic error; please report
CSSDIR127: aborting due to no files found for dirspec(s) [-Lnf:Y  or -Lnf:A]
CSSDIR128: aborting due to invalid filespec/dirspec(s)   [-Lifs:Y or -Lifs:A]
CSSDIR129: commandline contains illegal characters 
CSSDIR130: user hit ctrl-c during searching a file for search string 
CSSDIR131: unknown error dir info util detected; please report
CSSDIR132: fatal problem occurred during sorting
CSSDIR133: can't register missing a valid key file
CSSDIR134: license was successfully registered
CSSDIR135: user did not agree to terms and conditions
CSSDIR136: license registration failed
CSSDIR137: register pro license required
CSSDIR138: internal fatal error
CSSDIR139: registered license required
CSSDIR140: demo period has expired, visit website to register
CSSDIR141: object rexx active environment detected; cssdir aborting
CSSDIR142: aborting due to non unique filespecs detected [-Lnu:Y or -Lnu:A]
CSSDIR143: aborting due to mixedCase dup filespecs found [-Lmcd:Y or -Lmcd:A]

CSSDIR150: Warning: Can't find: cssdir initialization file (usally cssdir.ini)
CSSDIR151: invalid filepath/dirpath Spec [-Lifs:L or -Lifs:Y]
CSSDIR152: noReadAccess of listed file   [-Nr:1 or -Nr:2 or -Nr:4]
CSSDIR153: ErrorOpeningFile of listed file during searching (-Sch:)
CSSDIR154: error from eautil
CSSDIR155: no (qualified) files found  [-Lnf:L or -Lnf:Y]
CSSDIR156: list files that CRC weren't computed due to -Srcrc   [-Mf:R]
CSSDIR157: list files that CRC weren't computed; >=2 gig fsize  [-Mf:Y]
CSSDIR158: list files whose    data can't be read for CRC calc  [-Mf:C] 
CSSDIR159: list files that are 2 gig or more in filesize        [-Mf:2] 
CSSDIR160: list files whose ea size can not be obtained         [-Mf:Z]
CSSDIR161: list files whose ea data can't be read for CRC calc  [-Mf:B]
CSSDIR162: list files whose CRC weren't computed; due to -Xcrc: [-Mf:X]
CSSDIR163: warning nonunique filespec found [-Lnu:L or -Lnu:Y] 
CSSDIR164: unregistered version detected
CSSDIR165: warning mixedCase dup filespecs found [-Lmcd:L or -Lmcd:Y]

CSSDIR196: error during error handling during startup; please report
CSSDIR197: internal error; should never experience; you probably have
           a flakey piece of hardware; contact CSS for your next system
CSSDIR198: internal error; should never experience; you probably have
           a flakey piece of hardware; contact CSS for your next system
******************************************************************************

(J.) Hints, tips, issues and caveats section:
*********************************************
Tip: Dir versus cssdir difference: cmd.exe's 'dir /a /s' does NOT list any 
entries that are found in a hidden directory only the immediate hidden 
matching entries, whereas 'cssdir -a -s' will list all matching entries even 
ones in hidden directories.

Tip and caveat: you may wish to use the attached cssdirm.cmd rexx script to 
pipe any of your cssdir invocations through the eCs or OS/2 more.com or 
replace with a more powerful paging program. It can be handy to view the 
online cssdir reference help by issuing 'cssdirm -h'. Another suggestion is to 
look into using eCs or OS/2's epm, one can buffer a sizable amount of data to 
scroll back through as well as save.

Known issues: If cssdir detects an active object rexx environment, it will 
abort, this is a known issue and the only known workaround for now is to boot 
from a CD with classic rexx active (this is the normal or default case), or 
from another partition that has classic rexx as its default. You may be able 
to use switchrx.cmd to toggle from object rexx to classic rexx and then 
rebooting (but doing so is at your own risk).

Caveat: Duplicate finds are POTENTIAL duplicate files, even running a 32bit 
CRC on files does *NOT* absolutely guarantee an exact sized set of files 
contents to be identical. However the probability of them not containing the 
same contents is very very very small perhaps the odds are thought to be as 
small as over 4 billion to 1 that the contents of the files are in fact *NOT* 
the same yet both the files CRC, and files size produce the same result or 
other user selectable comparison options. However if the CRCs are different 
and CSS's CRC calculations are not in error (which is thought to be extremely 
slim), then the files are in FACT different. Further if the files are in fact 
the same, they may still be necessary in different directory trees, etc. If in 
doubt do NOT delete those files, seek a qualified knowledgeable systems 
professional to save yourself or your company unnecessary grief and panic 
(which can be common using some other environments) before just deleting those 
in question files. As always before you purge any files you're not ABSOLUTELY 
sure of, you should backup, backup and backup BEFORE you smoke something you 
wish you had a backup for. Further if you have mapped multiple ways of listing 
directory entries and then invoke cssdir to find such same named files, 
currently cssdir does *NOT* decipher they are in fact the same file. And if in 
fact they were the same file and you deleted what you thought was a duplicate 
file you would have blown away all others that were potential matching 
duplicated files mapped under different "aliased" names as well which actually 
really pointed to the same file! These duplicate or many "aliased" files will 
also produce incorrect used and other total fields.

caveat: The concern of potential duplicate logic explained above also can have 
an effect on *NOT* detecting unique files when using the -Uf: option, but many 
professionals in the industry would agree the odds are very very small and 
extremely rare but I emphasis still possible but highly improbable. A most 
definite way but one that can be very expensive, especially on a large set of 
large files in terms of time, in making absolutely sure is to do a byte by 
byte compare of all files in question, including the Eas. This may be added as 
a feature in the future. If you need this now or desire it, private 
consultation with CSS may be able to add it much sooner than later.

caveat: remote access via UNC or via a remotely mapped drive with EXT2 (linux 
partition) OS/2 non-IBM third party ifs driver does not work reliably, for 
that matter it also does not work reliably with cmd.exe's dir either. Basic 
tests locally with a mapped drive (via only EXT2 ifs driver) (and also not 
remotely) appear to work both with dir and cssdir. However if one references 
either via dir or cssdir neither handle locally accessed UNC accesses 
properly. Using any EXT2 accesses with cssdir and associated software or the 
reliability thereof is not supported and is totally at the user's own risk.

caveat: NDFS IFS driver (netdrive) file access is in the preliminary testing 
phase. An issue has come up that if such ftp accessed systems allow the same 
name to be used for files that just differ in case (such as Unix), cssdir will 
at this time consider such a file as a duplicate in name and flag it if the 
-Lmcd:A or -Lmcd:Y option is set and then abort. Currently any issues with 
invoking CSSDIR on or to references for dirspecs/filespecs on NDFS mounted 
drives (directly or indirectly, such as remapped as a lan drive via a network 
share) are NOT currently supported until further notice. (If you need this 
type of support, CSS private consultation may be available.)

caveat: accessing files on a JFS file system directly or via a UNC or mapped 
LAN drive or possibly other file systems of greater than or equal to 2 (two) 
gigabytes in size files, AND do NOT have appropriate fixpacks and kernal 
installed will get an incorrect filesize. In our test cases we have found that 
 a bogus size of 1 byte is reported (this also happens with cmd.exe's dir). 
*****************************************************&************************

(K.) Definitions/references section:
************************************
CRC - cyclical redundant checksum, and data integrity algorithm that aids in 
detecting data corruption.

CSS -Curtis Systems Software P.C. has extensive experience in the development 
of many industries with software engineering and working with hardware 
designers, with over 15 years in expert real time and embedded systems. As 
well as over 10 years of OS/2 and eCS use and development experiences. We are 
committed to quality, value, truth, and the pursuit of excellence, visit
www.curtisSystemsSoftware.com. 

CSSDIR - Curtis System Software Directory Program, the most powerful directory 
or cataloging program for eCs and OS/2 Warp 4 known to exist.

DORA* - a -Dir: option default setting which is (O)ver(R)ide(A)ble. It is a 
default option setting that can be specifically overridden within the context
of the -Dir: option. Such DORA* options include /Wc: /s /a /Dr: /Sr: /Zr:.

LORA* - a -List: option default setting which is (O)ver(R)ide(A)ble. It is a 
default option setting that can be specifically overridden within the context 
of the -List: option. Such LORA* options include: /o /Uf: /Ufao: /Title: 
/Etitle: /Uq/Ey/De/Te/Es/Ec/Fs/Fc/Ae/Rn/Fn/Ff/Df /Ab/Hb/Rb/Sb/Cb/Nd 
/Lp/Sl/Lh/Ll/Nf/Ne/Ns/Ef/Se/Sf/Ts/Di.

short hand code - aka shcode, is an assigned code for a given base path name 
and dirspec, usually displayed instead of displaying a base directory name. 
Also can be useful to reBuild a full file spec with these values and the 
relativepath name. [See also options -Ff, and -Sl]
 
www.curtisSystemsSoftware.com - website for cssdir.
  
www.eComStation.com - home of the enhanced and polished version of OS/2, eCs 
or eComStation, packaged by Serenity Systems (www.serenity-systems.com).

www.mensys.nl/indexuk.html - a good source to purchase eCs and OS/2 software.

www.os2bbs.com - good shareware source for OS/2 and ecomstation, worth 
subscribing to each and every year.
******************************************************************************

(L.) Terms and Agreement Section:
*********************************
TERMS AND CONDITIONS OF SALE, LICENSE AND USE OF CSSDIR (and use before 
purchasing cssdir in a trial or "demo" capacity) and associated software 
"Software" produced and/or distributed by Curtis Systems Software P.C. (CSS). 
This software is protected by United States and International Copyright Laws.
Use of this software for any purpose whatsoever constitutes your unqualified 
acceptance of the following statements: 

Curtis Systems Software P.C. (CSS),  the author, makes no warranty or 
representation that the software will be error free. CSS disclaims any 
warranties, either express or implied, including but not limited to any 
implied warranty of merchantability or fitness for any particular purpose.

The user agrees to take full responsibility for the selection of and any use 
whatsoever made of the software.

IN NO EVENT WILL THE AUTHOR BE LIABLE FOR ANY DAMAGES WHATSOEVER (INCLUDING 
WITHOUT LIMITATION DAMAGES FOR LOSS OF BUSINESS PROFITS, BUSINESS INTERRUPTION,
 LOSS OF BUSINESS INFORMATION OR THE LIKE) ARISING OUT OF THE USE OF, 
INTERRUPTION IN THE USE OF, OR INABILITY TO USE THIS SOFTWARE, EVEN IF THE 
AUTHOR HAS BEEN ADVISED OF ANY POSSIBILITY OR LIKELIHOOD OF SUCH DAMAGES. 

I. Customer obligations
A.) Customer assumes full responsibility that this licensed computer software 
(the software) meets the specifications, capacity, capabilities, versatility 
and other requirements of Customer. 
B.) Customer assumes full responsibility for the condition and effectiveness 
of the operating environment in which the software is to function, and for its 
installation.

II. CSS's conditions of Sale
A.) CSS makes no warranty as to the design, capability, capacity, or 
suitability  for use of the Software, except as provided in this paragraph. 
Software is licensed on an "AS IS" basis, without warranty. The original 
Customer's exclusive remedy in the event of a software manufacturing defect, 
is its repair or replacement within thirty (30) calendar days of the date of 
the CSS sales document received upon license of the Software. The defective 
Software shall be returned to CSS or place of purchase with the sales 
document.
B.) Except as provide herein no employee, agent, franchisee, dealer or other 
person is authorized to give any warranties of any nature on behalf of CSS. 
C.) Except as provided herein, CSS makes no express warranties, and any 
implied warranty of merchantability or fitness for a particular purpose is 
limited in its duration to the duration of the written limited warranties set 
forth herein.

III. Limitation of liability
A.) Except as provided herein, CSS shall have no liability or responsibility 
to customer or any other person or entity with respect to any liability, loss 
or damage cause or alleged to be cause directly or indirectly by "Software" 
sold, leased, licensed or furnished by CSS, including, but not limited to, and 
interruption of service, loss of business or anticipatory profits or 
consequential damages resulting from the use or operation of the "Software". 
In no event shall CSS be liable for loss of profits, or any indirect, special, 
or consequential damages arising out of any breach of this warranty or in any 
manner arising out of or connected with the sale, lease, license, use or 
anticipated use of the "Equipment" or "Software". Notwithstanding the above 
limitation and warranties, CSS's liability hereunder for damages incurred by 
customer or others shall not exceed the amount paid by customer for Cssdir and 
associated Software "Software" involved.

IV. Cssdir and associated Software License
CSS grants to Customer a non-exclusive, paid up license to use the purchased 
specific version and type of license (Pro or shareware) of Cssdir and 
associated Software on one computer, subject to the following provisions:
A.) Except as otherwise provided in this Software License, applicable United 
States and/or International copyright laws (whichever is more protective to 
the producer of CSS copyrighted material(s)) shall apply to the Software.
B.) Title to the medium (if any) on which the Software is recorded or stored 
(diskette, CD, etc.) or downloaded is transferred to the customer, but not 
title to the Software.
C.) Customer may not have Cssdir and associated Software active on more than 
one computer for each license. Further if Cssdir and associated software is 
made available via LAN or Internet or the functionality thereof, then no more 
than one copy of Cssdir and associated software per license is legally 
allowed. Also for EACH real or potential Cssdir simultaneous user, a purchased 
appropriate type of license (PRO or shareware) and version is required.
D.) Customer shall not use, make, manufacture, or reproduce copies of Software 
except for use on one computer and as is specifically provided in this 
Software license. Customer is expressly prohibited from disassembling or 
decompiling the software. Customer is expressly prohibited from using any of 
cssdir's documentation and/or nomenclature in other products without explicit 
written permission from CSS.
E.) Customer is permitted to make additional copies of the Software only for 
backup or archival purposes or if additional copies are required in the 
operation of one computer with the Software, but only to the extent the 
Software allows a backup copy to be made.
F.) All copyright notices shall be retained on all copies of the Software.

V. Applicability of Warranty
A.) The terms and conditions of this Warranty are applicable as between CSS 
and Customer for sale of a Software License to Customer.
B.) The Limitations of liability and Warranty provisions herein shall inure to 
the benefit of CSS, the author, owner and or licensor of the Software.

VI. Additional license(s) discounts constraints
Any Company that purchases and retains ownership of one full priced license 
for a given specific version may be eligible for subsequent licenses of the 
same license type and version at a discounted price if the following are met:
1.) license type and version are still available for sale by CSS AND 
2.) additional license will not be resold (license can not be transferred) AND
3.) the additional license(s) is/are for and are to be used exclusively by the 
same individual, company or corporation located at the same physical address.
 
VII. Shareware licensing. 
In event the user has acquired Cssdir and associated software as in a trial 
use (as to determine it usability) after 30 calendar days from its first use, 
the user must purchase either a Cssdir PROfessional version or register the 
shareware version at the current shareware pricing for each computer they are 
going to use it on, including section IV C. (see above) or remove it from all 
their computers, and backups, and refrain from using it. Please comply any 
thing less is prohibited, CSS does appreciate your compliance. Thank you.
******************************************************************************

(M.) Acknowledgments section:
*****************************
CSS expresses thanks to all the beta testers, especially Glenn Hudson for his 
time, insights, and valuable suggestions. IBM for OS/2, and Serenity Systems 
for eComstation 1.0 and 1.1, thank you Bob St. John and Kim Cheung. I also 
want to thank Roderick Klein, Douglas Clark, John Urbaniak, Chip Davis, and 
Steve Levine, for other related discussions and/or emails. And the many people 
that have contributed to helping make eComstation a reality, which aided CSS 
in developing cssdir in a stable know what you got day in day out environment. 
******************************************************************************

(N.) Release Revisions section:
*******************************
1.02  Release August 13, 2003
  * added -Lp option, -List: current processing user option settings
  * added K option to -Uf:, this detects filename case changes,
    also adjusted the listing of contents of directories whose name only
    differs in case to be more reasonable for a typical user
  * added *OFF option to -Uf:, this shuts off the unique file option filter
  * fixed multiple reports problem when using -Uf: with different settings
  * added (missing) /Uf: and /Ufao: settings when using -Lh and /Lh 
  * changed notation of DefGlob* to:
      DORA* -(D)ir:  (O)ver(R)ide(A)ble option
      LORA* -(L)ist: (O)ver(R)ide(A)ble option
  * updated and reorganized this document 

1.01 first official GA release
  * tested on the following systems:
  * tested on eCs 1.03 (1.0 with fixpack 3)
  * tested on eCs 1.1  
  * in preliminary tests for OS/2 Warp 4 with fixpack 9 or greater, 
    no known problems detected so far.

     (C) Copyright 2003 Curtis Systems Software P.C. All rights reserved
******************************************************************************
123456789012345678901234567890123456789012345678901234567890123456789012345678
<end of document>