Subversion Repositories SvarDOS

Rev

Rev 2020 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2020 Rev 2029
Line 13... Line 13...
13
/S  - force ShortFileNames (SFNs, disable LFN support)
13
/S  - force ShortFileNames (SFNs, disable LFN support)
14
/P  - pause after each page
14
/P  - pause after each page
15
/DF - display filesizes
15
/DF - display filesizes
16
/DA - display attributes (Hidden,System,Readonly,Archive)
16
/DA - display attributes (Hidden,System,Readonly,Archive)
17
/DH - display hidden and system files (normally not shown)
17
/DH - display hidden and system files (normally not shown)
18
/DS - display alternate data streams when exist (Win32 only)
-
 
19
/U  - use Unicode (UTF-8) characters [Experimental, see usage notes in tree.htm]
-
 
20
 
18
 
21
TODO:
19
TODO:
22
/On - sort* output, where n is F (filesize), N (name), E (extension)
20
/On - sort* output, where n is F (filesize), N (name), E (extension)
23
* Output is sorted provided enough memory is available, otherwise output is
21
* Output is sorted provided enough memory is available, otherwise output is
24
  unsorted to avoid aborting due to out of memory errors.
22
  unsorted to avoid aborting due to out of memory errors.
Line 50... Line 48...
50
    An implementation of UNIX catgets( ) for DOS
48
    An implementation of UNIX catgets( ) for DOS
51
  Note: The necessary files from cats38s.zip are included along with
49
  Note: The necessary files from cats38s.zip are included along with
52
        the license file, however the full archive should also be
50
        the license file, however the full archive should also be
53
        available at the same location this archive was downloaded from.
51
        available at the same location this archive was downloaded from.
54
        See files.lst for a list of which files are part of Jim Hall's
52
        See files.lst for a list of which files are part of Jim Hall's
55
        cats implementation and thus not public domain.  
53
        cats implementation and thus not public domain.
56
  Version 3.8 (unmodified) is the current version of Jim Hall's cats used.
54
  Version 3.8 (unmodified) is the current version of Jim Hall's cats used.
57
 
55
 
58
Since I wanted lfn support, I choose the win32 versions of
56
Since I wanted lfn support, I choose the win32 versions of
59
  findfirst, findnext, findclose as the basis for my routines
57
  findfirst, findnext, findclose as the basis for my routines
60
  that implement support for lfns.  This allowed me to write tree
58
  that implement support for lfns.  This allowed me to write tree
61
  first under windows and test for compatibility with the win32 tree.
59
  first under windows and test for compatibility with the win32 tree.
62
  This version should compile under Windows (copyright Microsoft) console mode
60
  This version should compile under Windows (copyright Microsoft) console mode
63
  using only the tree.cpp and stack.c files.  To compile under DOS, a 
61
  using only the tree.cpp and stack.c files.  To compile under DOS, a
64
  second file w32fDOS.cpp is needed, which implements the
62
  second file w32fDOS.cpp is needed, which implements the
65
  findfirst/next/close routines and any extra routines.
63
  findfirst/next/close routines and any extra routines.
66
 
64
 
67
This version (win32 tree.exe and DOS tree.exe [stub]) as best as I
65
This version (win32 tree.exe and DOS tree.exe [stub]) as best as I
68
  can tell produces nearly identical output to the WinNT 4 tree program 
66
  can tell produces nearly identical output to the WinNT 4 tree program
69
  except:
67
  except:
70
  The volume only includes the 0000:0000 serial number, as I do not know
68
  The volume only includes the 0000:0000 serial number, as I do not know
71
  where NT's tree is getting the other 8digit number from. 00000000 0000:0000
69
  where NT's tree is getting the other 8digit number from. 00000000 0000:0000
72
  (other than it is machine and not volume specific).
70
  (other than it is machine and not volume specific).
73
  And my program makes no attempt to display the expanded filepath,
71
  And my program makes no attempt to display the expanded filepath,
74
  ie changing D:. to D:\somedir\somesubdir
72
  ie changing D:. to D:\somedir\somesubdir
75
  The error level matches that of the [IBM's] PC DOS 7r1 tree.exe;
73
  The error level matches that of the [IBM's] PC DOS 7r1 tree.exe;
76
  This implementation sets the error level (return value) consistant 
74
  This implementation sets the error level (return value) consistant
77
  with the tree program distributed with (copyright) IBM PC DOS 7R1, 
75
  with the tree program distributed with (copyright) IBM PC DOS 7R1,
78
  i.e. 0 on successful display and 1 on most errors (critical errors 
76
  i.e. 0 on successful display and 1 on most errors (critical errors
79
  such as ctrl-C return unspecified values) and if an option is given 
77
  such as ctrl-C return unspecified values) and if an option is given
80
  on the command line (outside of a path to begin at).  Additionally 
78
  on the command line (outside of a path to begin at).  Additionally
81
  the text displayed on error may show different paths (NT2000pro 
79
  the text displayed on error may show different paths (NT2000pro
82
  displays full current path + bad path, followed by error with full 
80
  displays full current path + bad path, followed by error with full
83
  path, whereas this implementation shows error with bad path unmodified).
81
  path, whereas this implementation shows error with bad path unmodified).
84
  The only differences I have seen between this version and the WinNT 5
82
  The only differences I have seen between this version and the WinNT 5
85
  (aka Windows 2000 Pro.) version are the same as with the WinNT 4 tree,
83
  (aka Windows 2000 Pro.) version are the same as with the WinNT 4 tree,
86
  and WinNT 5 refers to directories as folders. (This can be changed,
84
  and WinNT 5 refers to directories as folders. (This can be changed,
87
  by editing the tree catalog file if really desired.)
85
  by editing the tree catalog file if really desired.)
Line 89... Line 87...
89
It may be somewhat slower than other implementations, because it must
87
It may be somewhat slower than other implementations, because it must
90
  open a directory twice, once to get a count of subdirectories and
88
  open a directory twice, once to get a count of subdirectories and
91
  then again to actually display information.  The only known
89
  then again to actually display information.  The only known
92
  limitations are on filename length (limited by OS mostly), and the
90
  limitations are on filename length (limited by OS mostly), and the
93
  maximum depth limited by available memory (a linked list is used to
91
  maximum depth limited by available memory (a linked list is used to
94
  store subdirectory information).  Other than slower, it should work 
92
  store subdirectory information).  Other than slower, it should work
95
  (though not tested) with directories with more than 32000 files. 
93
  (though not tested) with directories with more than 32000 files.
96
  (Note w98 explorer will die if you try to 'select all' on that many 
94
  (Note w98 explorer will die if you try to 'select all' on that many
97
  files. :)
95
  files. :)
98
 
96
 
99
pdTree v1.04
97
pdTree v1.04
100
Original location: http://www.darklogic.org/fdos/tree/
98
Original location: http://www.darklogic.org/fdos/tree/
101
 
99