home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 6 File
/
06-File.zip
/
cssd101a.zip
/
cssdir.txt
< prev
next >
Wrap
Text File
|
2003-08-05
|
104KB
|
1,897 lines
******************************************************************************
(C) Copyright 2003 Curtis Systems Software P.C. All rights reserved.
(last update: 2003 August 5)
******************************************************************************
CSSDIR version 1.01 August 2003 (English Version)
Table of Contents
(A.) TERMS and AGREEMENT Section:
(B.) CSSDIR introduction section:
(C.) Have you ever wanted to ... section:
(D.) 25 reasons to purchase CSSDIR section:
(E.) Brief Cssdir help section:
(F.) ALPHABETICAL DETAIL OPTION DESCRIPTIONS Section:
(G.) TABLE 1 section:
(H.) examples Section:
(I.) cssdir license feature comparisons section:
(J.) installation section:
(K.) error/warning/information message codes section:
(L.) Hints, tips, issues and caveats section:
(M.) definitions/references section:
(N.) Acknowledgments section:
(O.) Release Revisions section:
******************************************************************************
(A.) 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 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 are 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 items are
meet:
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 company or corporation located in the same physical addressed building
OR
4.) the additional license(s) is/are for and are to be used exclusively by
same company or sole proprietorship in size of no greater than 5 (five)
employees and/or contractors at the time of purchase of the subsequent
licenses.
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 removed 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.
*****************************************************************************
(B.) CSSDIR introduction section:
*********************************
CSSDIR is a significant directory/filesystems analyzing and file searching
program developed and copyrighted (C) 2003 software, documentation and
nomenclature by Curtis Systems Software P.C., All rights reserved (see terms
and agreements). It stands for (C)urtis (S)ystem (S)oftware (Dir)ectory
program [visit our website at www.curtisSystemsSoftware.com]. Other names were
thought of but because of potentially already taken names, we opted to just
call it cssdir. After having used the OS/2 operating system since 1992
starting with OS/2 2.0 through the improved Serenity Systems'
(www.serenity-systems.com) eCs (eComStation) 1.1, we have developed a number
of in house utility directory sifting programs and observed no other such
program existed that allowed many different options or the flexibility we
desired. Hence cssdir was created with our extensive programming experiences
and needs. Cssdir is a very versatile, flexible and powerful directory program
which currently only exists for the OS/2 and eCS (eComStation) operating
systems. We know of no other more powerful and extensive options flexible
program for file filtering and listing. 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. which allows
increased flexibility).
******************************************************************************
(C.) Have you ever wanted to ... section:
******************************************
1) list all files that have EA's?
2) list just the files that changed today? or changed within some date
range(s)?
3) compute crcs on both the Ea and file's data and list them with other
important file information? (Very useful to compare against baseline systems
or snapshots.)
4) Exclude files with certain suffixes in your listings?
5) produce multiple listing of files sorted in different ways with other file
directory information over multiple drives including network drives and UNC
names without refetching that data with multiple invocations of a program,
(which can be extremely time consuming and all while perhaps babysitting them
as well as repoking a GUI-only program which you may not be SURE you can
repeat your exact settings immediately or in a month or Year from now!)
6) Include files in a listing which sizes exceed x number of bytes? (A quick
way to find out where all your disk space is being consumed by certain types
of files or extensions that are polluting your drives and slowing your backup
procedures.)
7) find duplicate files across multiple drives or network shares and even
under different file names?
8) produce a snapshot to later be referenced to determine exactly what files
have changed since this snapshot was taken, new files, deleted files, changed
files including subtle changes as in a file attributes and EAs? (Perhaps
detect files that mysteriously have changed or have appeared as in being virus
infected?)
9) list only the files that changed based on their 'last updated' timestamp
during the current week or in the last n days?
10) find all unique files amongst two or more paths and that allows you to
define to a large degree what qualifies them as being unique? Great for file
tree compares!
... And a whole lot more, limited only by your knowledge of how to use cssdir!
NOW YOU CAN with CSSDIR!
******************************************************************************
(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 quite powerful, will be discussed later on
in this document. 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. Visit www.curtisSystemsSoftware.com.
******************************************************************************
(E.) Brief 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.01 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 -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: [] DefGlob* wild card(s); use ';' for multiple -Wc:
-s [CUR] DefGlob* include subDir -s is an alias for -sALL; -sCUR
for current Dir; -sNO for none
-a [:-H-S] DefGlob* 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] DefGlob* 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 /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] DefGlob* 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: [] DefGlob* Unique file settings -Uf:[DSCZBA-]
'-Uf:' is alias for -Uf:DSCZBA
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
Also see -Ufao: for use when A is used
-Ufao: [] DefGlob* 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] DefGlob* 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] DefGlob* 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: [] DefGlob* listTitle; for multiple lines use # for cr/lf
-Etitle: [] DefGlob* 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] DefGlob* Unique file fld 1= list before -Rn fld
2= list before -Ey fld
-Ey [0] DefGlob* Entry fld
-De [1] DefGlob* Date fld 1=mm-dd-yy; 2=yyyy-mm-dd
3=ddMmmyy
-Te [1] DefGlob* Time fld 1=hh:mm* ; 2=hh:mm:ss ;
-Fs [1] DefGlob* FileSize fld 1=with <DIR>; 2=all numeric
-Fc [0] DefGlob* FileCrc fld
-Es [1] DefGlob* EaSize fld
-Ec [0] DefGlob* EaCrc fld
-Ae [0] DefGlob* Attribute fld 1=----; 2=----- (includes Dir)
-Rn [0] DefGlob* RefNum fld
-Fn [0] DefGlob* FileName fld 1=name.ext 2=name.ext formatted
-Ff [1] DefGlob* 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] DefGlob* dir flag fld 0= no trailing \ 1=trailing \
-Sl [0] DefGlob* shorthandList rec(s)
-Lh [0] DefGlob* ListingHead rec 1=head 2=tail 3=both
-Ll [0] DefGlob* listingLabel rec 1=head 2=tail 3=both
-Ab [0] DefGlob* ArchiveBitSet rec
-Hb [0] DefGlob* HiddenBitSet rec
-Rb [0] DefGlob* ReadonlyBitSet rec
-Sb [0] DefGlob* SystemBitSet rec
-Cb [0] DefGlob* AllClearBits rec
-Nd [0] DefGlob* NumDirectories rec
-Nf [0] DefGlob* NumFiles rec
-Ne [1] DefGlob* NumEntries rec
-Ns [1] DefGlob* numEntriesSrched rec 1=files before searchString
2=#1 but always show
3=#1 + bytes searched
4=#3 but always show
-Ef [0] DefGlob* non 0 EasizFiles rec
-Se [0] DefGlob* SumEaSizes rec
-Sf [1] DefGlob* SumFileSizes rec
-Ts [0] DefGlob* TotalSizes rec; filelengths + eaSizes
-Di [1] DefGlob* 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.) ALPHABETICAL DETAIL OPTION DESCRIPTIONS Section:
*****************************************************
The following describes each of the options sorted alphabetically available
when invoking the cssdir program. DefGlob* stands for a default global option
setting, which can be overridden specifically via a leading '/' instead of a
'-' in certain usage contexts. Such contexts include -Dir: and -List: options.
With the -Dir: one can overide -Wc: -s -a -Dr: -Sr: -Zr: with /Wc: /s /a /Dr:
/Sr: /Zr:. Within the -List: option's context one can overide -Ab -Ae -Cb -De
-Df -Di -Ec -Ef -Es -Etitle: -Ey -Fc -Ff -Fn -Fs -Hb -Lh -Ll -Nd -Ne -Nf -Nh
-o -Rb -Rn -Sb -Se -Sf -Sl -Te -Title: -Ts -Uf: -Ufao: and -Uq with their
corresponding '/' named option and indirectly one can overide -b -f -Bf with
/Ff. 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 and all together in
one report and also with consistent data sets that might otherwise change 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 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] DefGlob* 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] DefGlob* 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] DefGlob* 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] DefGlob* 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] DefGlob* 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] DefGlob* directory flag
With a setting of '-Df1' or just '-Df' append a trailing '\' to listed
directory entries.
-Di [1] DefGlob* 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 global 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] DefGlob* 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] DefGlob* 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] DefGlob* 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] DefGlob* EaSize field
With a setting of '-Es1' or just '-Es', this option will list the Size of the
Ea (in bytes).
-Etitle: [] DefGlob* 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] DefGlob* 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] DefGlob* 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] DefGlob* 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] DefGlob* 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] DefGlob* 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] DefGlob* 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] DefGlob* 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 CSSDIRyyy message code 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
/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] DefGlob* 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 CSSDIRyyy message code 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 CSSDIRyyy message code 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 reported
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 the CSSDIRyyy message code 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] DefGlob* NumDirectories record
With a setting of '-Nd1' or just '-Nd' will list the count of the total of all
directories found.
-Ne [1] DefGlob* 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] DefGlob* 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] DefGlob* 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] DefGlob* 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 read caveats section
having to do with 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] DefGlob* 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] DefGlob* 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] DefGlob* 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] DefGlob* 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] DefGlob* 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] DefGlob* 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] DefGlob* 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] DefGlob* 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] DefGlob* 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: [] DefGlob* 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] DefGlob* TotalSizes record
With a setting of '-Ts1' or '-Ts' will list the total filelengths and eaSize
combined usage in bytes.
-Uf: [] DefGlob* Unique file settings -Uf:[DSCZBA-]
'-Uf:' is alias for -Uf:DSCZBA
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. Also see -Ufao: for use when A
is used.
-Ufao: [] DefGlob* 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] DefGlob* 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: [] DefGlob* 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] DefGlob* 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
/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).
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.) TABLE 1 section:
*********************
In the following table 1:
A leading '*' denotes options can be used globally as well as specifically
with the '-List:' option. Each such option can be assigned a new
global default via a leading '-' and then specifically over written 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
with the -Dir: option. Each such option can be assigned a new
global default via 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
table 1:
********
# = also override with -Dir:
* = also override with -List:
- = 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:
-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.) examples Section:
**********************
A few examples follow with output, followed by 20 or more examples with detail
descriptions of what a given example is requested to search for and display.
[F:\os2]cssdir f:\os2\tr*
*** 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 49 trace.exe
11-15-00 3:45p 232067 5583 tracefmt.exe
10-06-00 9:10p 29930 0 traceget.exe
9-05-00 4:55p 4026 0 TRADEMK.ICO
11-15-00 7:35p 34185 0 TREE.COM
10-06-00 9:01p 2448 0 trfgrn.ico
10-06-00 9:01p 2448 0 trfred.ico
10-06-00 9:10p 42054 49 trspool.exe
* NumEntries: 8
* SumFileSizes: 403222 bytes
* free space drive F: 1029718528 bytes; 49.1% Free; 'ECOMSTATION '
[F:\os2]
[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]
[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:\os2]
[F:\os2]cssdir -o*summary f:\ -s -List:/1/Di3 -a
*** cssdir ver 1.01 Pro Copyright (c) 2003 Curtis Systems Software P.C. ***
searching for entries in <"F:\">
Error: easize; F:\os2\system\RAS\LOG0001.DAT
ErrorTotal: 1 of filedata+easize+eadata
++[ 1a] <"F:\">
*[ '-List:/o:*SUMMARY/Sl/Lh/Ll/Ab/Hb/Rb/Sb/Cb/Nd/Nf/Ne/Ns/Ef/Se/Sf/Ts/Di3' ]*
* archive bit set entries: 13020
* hidden bit set entries: 26
* readonly bit set entries: 244
* system bit set entries: 28
* all bits cleared entries: 27
* Numdirectories: 1681
* NumFiles: 13242
* NumEntries: 14923
* non 0 EasizeFiles: 4118
* SumEasizes: 7861486 bytes
* SumFileSizes: 1037098359 bytes
* TotalSizes: 1044959845 bytes
* free space drive F: 1029718528 bytes; 49.1% Free; 'ECOMSTATION '
* size of drive F: 2097414144 bytes; 50.9% Used; E7C9-A014
[F:\os2]
[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 '
[F:\]
20 or more cssdir examples follow (without output)
cssdir -s -a -od /$$bdrv:\
lists all files on the current boot drive sorted by ascending date/time
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 -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 (wint regular cmd.exe's dir you can NOT see seconds field)!
cssdir -Fcrc:y -Fc -Xcrc:.zip;.rar . f:\
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 list 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. Professional 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 of totals for files with the extension .zip
found 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
first dumps all active option settings followed by all files
in the current directory sorted by their filenames.
cssdir -s | more
lists files and pipe output 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
******************************************************************************
(I.) 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. And it comes with
NO support.
Registered Shareware license limitations: Has everything the Professional
version has with the following exceptions: no support for -Py: -Dir:@, -Xcrc:@,
-X:@, -o:R, -o:P, 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. You do get a lot. It has
Email support.
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 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.
******************************************************************************
(J.) installation section:
**************************
1.) Create a directory called cssdir.
2.) cd to this newly created directory cssdir.
3.) Unzip the cssdir zip file you received
4.) 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).
5.) 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. For performance reasons its probably best to have \cssdir
as your first item because you probably will be using it multiple times a day
and this should allow it to start up much faster.
6.) Reboot; This will update path and libpaths (if necessary, if you don't
know this answer then you best shutdown properly and then reboot).
7.)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 able to use a limited but still quite powerful subset of cssdir
features, and further can only do so for up to a period of 30 days legally
without purchasing a license.
8.) Enjoy cssdir; Please report any found abnormalities that are not already
reported in the FAQ on the CSS website, www.curtisSystemsSoftware.com.
******************************************************************************
(K.) error/warning/information message codes section:
*****************************************************
Please note that text after each CSSDIRxxx: code is representive 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
******************************************************************************
(L.) Hints, tips, issues and caveats section:
*********************************************
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 - but 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.
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.
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) is 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 (I don't know of any now officially
supported under eCS or OS/2) of greater than or equal to 2 (two) gigabytes in
size files, AND do NOT have appropriate fixpacks and kernal installed you will
get the wrong filesize, which in most cases will report a bogus size of 1 byte
(this also happens with cmd.exe's dir).
Known issues: If cssdir detects an active object rexx environment, it will
abort continuing to run, this is a known issue and the only known workaround
for now is to boot from a CD with classic rexx active, 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).
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.
There are a few planned significant undisclosed extensions for future versions
of Cssdir.
God Bless your systems with purchasing and using Cssdir today!
CSS, Curtis Systems Software P.C. focuses resources on worthwhile products and
services, coupled with ones that are also financially appreciated and which
will then have resources so appropriated for support and enhancement.
*****************************************************&************************
(M.) 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 of 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,
www.curtisSystemsSoftware.com.
cssdir - Curtis System Software Directory Program, the most powerful dir or
cataloging program for eCs and OS/2 known to exist.
defglob* - an option attribute which stands for default Global setting that
can be specifically overridden within the context of the following options
'-List:' and '-Dir:'.
short hand code - 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,
product called eCS or eComStation brought to you 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 year and every year.
******************************************************************************
(N.) Acknowledgments section:
*****************************
CSS wants to thank all the beta testers, especially Glenn Hudson for his time,
insights, and valuable suggestions. IBM for making OS/2 possible. Serenity
Systems for grabbing hold, and making eComstation 1.0 and 1.1 possible, thank
you Bob St. John and Kim Cheung. I also want to thank 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, So CSS could develop cssdir in a stable and know what you got day
in day out stable environment.
(O.) Release Revisions section:
*******************************
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 warp4 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>