home *** CD-ROM | disk | FTP | other *** search
/ Simtel MSDOS 1992 December / simtel1292_SIMTEL_1292_Walnut_Creek.iso / msdos / sysutl / picnix31.arc / PICNIX.DOC < prev   
Text File  |  1988-05-25  |  31KB  |  713 lines

  1.  
  2.  
  3. The PiCnix Package (PC Version):
  4. --------------------------------
  5.  
  6.    This  document describes the PC Version of the PiCnix*  package  by
  7. Peter  Stephen Heitman.    The utilities in the PiCnix package emulate
  8. the functionality of UNIX* System V commands as completely as possible
  9. for  MS-DOS*  and PC-DOS* users.  The utilities included in the PiCnix
  10. package are:
  11.  
  12.  
  13. Name:     cat - file listing utility
  14. Usage:    cat [ -usx? ] [ -v [-t] [-e] ] file1 ...
  15. Version:  3.7 for PCs with DOS 2.1 and higher
  16.  
  17. Name:     chlabel - set the volume label
  18. Usage:    chlabel { "<volume label>" [drive specifier] } | -? 
  19. Version:  3.4 for PCs with DOS 2.1 and higher
  20.  
  21. Name:     chmod - update attribute bits of files
  22. Usage:    chmod <mode> file1 ...
  23. Version:  3.4 for PCs with DOS 2.1 and higher
  24.  
  25. Name:     cp - copy files
  26. Usage:    cp file1 file2
  27.           cp file1 ... fileN directory
  28. Version:  3.6 for PCs with DOS 2.1 and higher
  29.  
  30. Name:     cpdir - copy a directory
  31. Usage:    cpdir Dir1 Dir2
  32. Version:  3.5 for PCs with DOS 2.1 and higher
  33.  
  34. Name:     df - print disk free space information
  35. Usage:    df [ -a | drive_1 [ drive_2 ... ] | -? ]
  36. Version:  3.4 for PCs with DOS 2.1 and higher
  37.  
  38. Name:     diff - find differences between two text files
  39. Usage:    diff [ -ebh? ]  oldfile newfile
  40. Version:  3.4 for PCs with DOS 2.1 and higher
  41.  
  42. Name:     du - disk usage utility
  43. Usage:    du [ -ars? ] [ names ]
  44. Version:  3.4 for PCs with DOS 2.1 and higher
  45.  
  46. Name:     fgrep - fast text search through files
  47. Usage:    fgrep [ -mvclxins? ] <pattern> file1 ...
  48. Version:  3.4 for PCs with DOS 2.1 and higher
  49.  
  50. Name:     grep - regular expression search through files
  51. Usage:    grep [ -mvclins? ] <pattern> file1 ...
  52. Version:  3.4 for PCs with DOS 2.1 and higher
  53.  
  54. Name:     head - beginning of file listing utility
  55. Usage:    head [-count] [ file1 ... ]
  56. Version:  3.4 for PCs with DOS 2.1 and higher
  57.  
  58. Name:     ls - directory listing utility
  59. Usage:    ls [ -cx1lmetsurpfaRd? ] [ file1 ... ]
  60. Version:  3.5 for PCs with DOS 2.1 and higher
  61.  
  62. Name:     more - file listing utility
  63. Usage:    more [-<n>cdflsd?] [+<linenumber>] [+/<pattern>] [ file1 ... ]
  64. Version:  3.4 for PCs with DOS 2.1 and higher
  65.  
  66. Name:     mv - move files
  67. Usage:    mv [-f?] file1 file2
  68.           mv [-f?] file1 ... fileN directory
  69. Version:  3.5 for PCs with DOS 2.1 and higher
  70.  
  71. Name:     mvdir - move a directory
  72. Usage:    mvdir Dir1 Dir2
  73. Version:  3.5 for PCs with DOS 2.1 and higher
  74.  
  75. Name:     ncd - change to directory
  76. Usage:    ncd [ - | new-directory | -? ]
  77. Version:  3.4 for PCs with DOS 2.1 and higher
  78.  
  79. Name:     ndate - set and display current date and time
  80. Usage:    ndate [-?] [ mmddhhmm[yy] ] [+<format string>]
  81. Version:  3.4 for PCs with DOS 2.1 and higher
  82.  
  83. Name:     necho - echo arguments
  84. Usage:    necho [-?] <argument list>
  85. Version:  3.4 for PCs with DOS 2.1 and higher
  86.  
  87. Name:     nset - set and display the command processor's environment
  88. Usage:    nset [-?] [ <name>=[<parameter>] ]
  89. Version:  3.4 for PCs with DOS 2.1 and higher
  90.  
  91. Name:     unset - delete a string from the command processor's environment
  92. Usage:    unset [-?] <name>
  93. Version:  3.4 for PCs with DOS 2.1 and higher
  94.  
  95. Name:     ntime - time a command
  96. Usage:    ntime [-?] <command string>
  97. Version:  3.4 for PCs with DOS 2.1 and higher
  98.  
  99. Name:     pwd - print the working directory
  100. Usage:    pwd [ -a | drive_1 [ drive_2 ] ... ] | -? ]
  101. Version:  3.4 for PCs with DOS 2.1 and higher
  102.  
  103. Name:     rm - remove files
  104. Usage:    rm [ -ifr? ] file ...
  105. Version:  3.5 for PCs with DOS 2.1 and higher
  106.  
  107. Name:     show - find a file along a path
  108. Usage:    show [ -a? ] [ -p <environment variable> ] file1 ... 
  109. Version:  3.4 for PCs with DOS 2.1 and higher
  110.  
  111. Name:     strings - print ASCII strings embedded in binary files
  112. Usage:    strings [ -? ] [ -t <n>] [ -n <n>] [ file1 ... ]
  113. Version:  3.4 for PCs with DOS 2.1 and higher
  114.  
  115. Name:     switchar - set or display the current system switch character
  116. Usage:    switchar [ <new-switchar> | '<new-switchar>' | "<new switchar>" ]
  117. Version:  3.4 for PCs with DOS 2.1 and higher
  118.  
  119. Name:     tail - end of file listing utility
  120. Usage:    tail [ -? | {+|-} [<count>] [l|c] ] [file]
  121. Version:  3.4 for PCs with DOS 2.1 and higher
  122.  
  123. Name:     tee - create multiple outputs from the input
  124. Usage:    tee [ -a? ] file ...
  125. Version:  3.5 for PCs with DOS 2.1 and higher
  126.  
  127. Name:     touch - update last-write times of files
  128. Usage:    touch [ -c? ] [ mmddhhmm[yy] ] file1 ...
  129. Version:  3.4 for PCs with DOS 2.1 and higher
  130.  
  131. Name:     wc - word counter
  132. Usage:    wc [ -lwc? ] [ file1 ... ]
  133. Version:  3.5 for PCs with DOS 2.1 and higher
  134.  
  135.  
  136. * PiCnix is a trademark of Peter Stephen Heitman
  137. * UNIX is a trademark of  Bell  Laboratories.
  138. * MS-DOS  is a U.S.  registered trademark of Microsoft,  Incorporated.
  139. * PC-DOS is a  trademark  of  International Business Machines.  
  140.  
  141.  
  142.  
  143. CONDITIONS FOR USE AND DISTRIBUTION:
  144. -----------------------------------
  145.  
  146.     PiCnix  is  being  distributed under the user-distributed concept.  
  147. Please  pass this package on to others and upload it to your  favorite
  148. computer  bulletin  board,  but please make sure you  give  them  the
  149. complete  PiCnix package,  including this document.  You also may  not  
  150. misrepresent,   either  by commission or  omission,   the  conditions 
  151. under which this program is being distributed.  
  152.  
  153.     If  you  use any of  the utilities in this package  on  a  regular 
  154. basis,  it  is  requested that you register as a user  of  PiCnix  by 
  155. sending  a  donation of $15  to the author.  A  registration  form  is 
  156. provided  below  for  your convenience.   Your   donation   will  help 
  157. support  improvements  and additions  to the PiCnix  package.    Your 
  158. registration will entitle you to  receiving notices  when  updates are 
  159. available  and  will allow you to  order the updated versions  of  the 
  160. package for only $10  per update.   When you register,  please include 
  161. your name and address so that notices of updates may be sent to you. 
  162.  
  163.    If you are registered as a user of the PiCnix package,   the source 
  164. for  all  of  these  utilities,   including  the   sources   for   the  
  165. underlying   libraries,   is  available  for an additional fee.    The 
  166. source  currently  consists  of  over half a megabyte  of  'C'  source  
  167. code compatible with TURBO-C by Borland International.  One library of 
  168. particular interest will be the code that provides  for  command  line
  169. argument  expansion  that  is  consistent  with the argument expansion
  170. provided by Unix.  The only restrictions on the  use  of  this  source 
  171. code  is  that  you may not create a competing product and a copyright 
  172. notice is required when using  some  of  the  included  libraries.  No 
  173. warranty  is  given  that  these  sources  will  be  suitable  for any 
  174. particular purpose.  
  175.  
  176.  
  177.     Of course,  anyone may send in bug reports and suggestions for how 
  178. the  package  may  be improved.   Please try to describe  the  bug  as 
  179. completely and accurately as possible along with a description of  how 
  180. it may be reproduced consistently (if you know).  I am very interested 
  181. in making the PiCnix package completely bug free, so please help me by 
  182. reporting any bugs you encounter.  Suggestions for how the package may 
  183. be  improved are always welcome,  particularly suggestions about which
  184. System V commands to implement next. 
  185.  
  186.  
  187.                                             Date: ____________________
  188.  
  189.  
  190.  
  191.  
  192.  
  193. PiCnix Package 
  194. Peter Stephen Heitman
  195. 23 Burwell Road
  196. West Roxbury, MA  02132
  197.  
  198.  
  199.  
  200.  
  201. Version of the PiCnix package:               PC Version
  202.  
  203. Release Date of this package:                May 1, 1988
  204.  
  205.  
  206.  
  207.  
  208.  
  209.             Registration Fee:                 ($15.00)   _________
  210.  
  211.             Ordering the most recent update:  ($10.00)   _________
  212.  
  213.             Ordering the sources:             ($30.00)   _________
  214.  
  215.                                                Total:    _________
  216.  
  217.  
  218. NOTE:  You must be currently registered as a user or 
  219.        must include your $15.00 registration fee with
  220.        your order to be able to order an update or the
  221.        sources.
  222.  
  223.  
  224.  
  225.     Select ONE:     360K Floppies  ______      1.2M Floppies  ______
  226.  
  227.  
  228.  
  229.  
  230.     YOUR NAME:      ________________________________________________
  231.  
  232.     YOUR ADDRESS:   ________________________________________________
  233.  
  234.                     ________________________________________________
  235.  
  236.                                                         ____________
  237.  
  238.  
  239. IMPORTANT THINGS TO KNOW BEFORE USING PiCnix:
  240. ---------------------------------------------
  241.  
  242.  
  243.     All  the  utilities  in  the PiCnix package share a common command 
  244. line format,  in general the command line for each will look like  the 
  245. following.  
  246.  
  247.          COMMAND   argument1 .... argumentN
  248.  
  249.     The  possible  arguments  are  described more fully in the following 
  250. sections.  
  251.  
  252.  
  253. Arguments:
  254.  
  255.  
  256.     Options:
  257.  
  258.          The Options are also referred to as switches and are used  to
  259.          modify  the  action or purpose of a COMMAND.  All the options
  260.          for a COMMAND are grouped before the first filespec.  Options
  261.          are distinguished from filespecs by the very first  character
  262.          called  a  switch  character.  The  switch  character is user
  263.          definable but will be a '/' whenever the  computer  is  first
  264.          turned on.
  265.  
  266.          You may want to use a minus sign '-' for the switch character
  267.          to  be consistent with the switch character assumed by  Unix.
  268.          There are two ways to change the switch character used by the
  269.          PiCnix Utilities.  First, each of the PiCnix Utilities  looks
  270.          for the environment variable PICNIX_SWITCHAR.  If it exists, the
  271.          first character of its value is used as the switch character.
  272.          You  can  set  the  environment  variable  by  including  the
  273.          following  command in your AUTOEXEC.BAT file or  issuing  the
  274.          command at the DOS prompt:
  275.  
  276.             set PICNIX_SWITCHAR=-
  277.  
  278.          The  second  method of changing the switch  character  is  to
  279.          change the switch character that DOS uses.  I have supplied a
  280.          utility called SWITCHAR that will allow you to show what  the
  281.          current  system  switch character is and to  set  the  system
  282.          switch character to a new value.  NOTE: not all programs look
  283.          to  see  what switch character is used by  DOS.  This  causes
  284.          some  programs  to fail to execute properly when  the  system
  285.          switch character has been changed. If you experience problems
  286.          with software after changing the system switch character, you
  287.          may  want to use the first method mentioned  above.  It  will
  288.          not  interfere with the operation of any other  software.  To
  289.          set  the  switch  character  you can  include  the  following
  290.          command in your AUTOEXEC.BAT file or issuing  the command  at
  291.          the DOS prompt:
  292.  
  293.              switchar -
  294.  
  295.          The switch character that you select will also determine  the
  296.          meaning of other characters on the command line.  If you  use
  297.          the default switch character of  '/',  the following will  be
  298.          used:
  299.  
  300.             On  input,  the single-escape will be a pound sign '#'.
  301.             On output,  the  directory separator will be a  back-slash
  302.                 '\'. and filenames by default will be printed in UPPER
  303.                 CASE.
  304.  
  305.           If you use a switch character different than the default '/',
  306.           the following will be used:
  307.  
  308.             On  input,  the  single-escape will be a back-slash '\'.
  309.             On output,  the directory separator will be a  slash  '/'.
  310.                 and filenames by default will be printed in lower
  311.                 case.
  312.  
  313.           The single-escape character is explained below.
  314.  
  315.           The way that filenames are printed can be changed by setting
  316.           the environment variable PICNIX_FNCASE.  If the value of the
  317.           environment variable is 'down', filenames will be printed in
  318.           lower  case.  If  the value of the environment  variable  is
  319.           'up', filenames will be printed in UPPER CASE.
  320.  
  321.          You  can  set  the  environment  variable  by  including  the
  322.          following  command in your AUTOEXEC.BAT file or  issuing  the
  323.          command at the DOS prompt:
  324.  
  325.             set PICNIX_FNCASE=down
  326.  
  327.    switch character:
  328.  
  329.          If the switch character is at the beginning of  an  argument,
  330.          that argument is assumed to be an option.  Files should not
  331.          be created that begin with the switch character as this makes
  332.          them very difficult to work with.  It is not even possible to
  333.          remove them with the rm command!
  334.  
  335.  
  336.     single-escape:
  337.  
  338.          The single-escape causes the next character to not be treated
  339.          specially.  For example,  a space or a tab normally separates
  340.          one argument from another.  By using the single-escape, it is
  341.          possible  to  make  one  argument  out  of two words.  If the
  342.          single escape is a back  slash  '\',  the  following  is  one
  343.          argument:
  344.  
  345.                    one\ argument
  346.  
  347.          The  utility  would  see the argument as being a string of 12
  348.          characters "one  argument",  including  the  space.  This  is
  349.          particularly  useful for the utilities fgrep and grep,  which
  350.          search for a string in a list of  files.  The  single  escape
  351.          also  causes  the  special characters single quote ',  double 
  352.          quote '"', dollar sign '$', star '*', question mark '?', left
  353.          bracket '[' and  single-escape  to  not  be  special  if  the
  354.          single-escape appears immediately before the special character.  
  355.  
  356.          NOTE:  The  single escape is removed from the argument unless 
  357.                 the argument is enclosed in single  quotes.  In  order 
  358.                 to  get  a  single-escape in the argument,  use two of
  359.                 them.  The first single-escape causes the  second  one
  360.                 to not be treated specially.
  361.  
  362.  
  363.  
  364.     dollar sign '$':
  365.  
  366.          The  dollar  sign  signals  the  beginning  of an environment
  367.          variable.  The characters beginning right  after  the  dollar
  368.          sign  and  continuing until the first character that is not a
  369.          digit or a letter is assumed to be an  environment  variable.
  370.          If  that  sequence  of characters IS an environment variable,
  371.          the value of the environment  variable  is  inserted  in  its
  372.          place  on  the  command  line.  For example,  assume that the
  373.          command line argument is:  $lib/myfile.  If at the DOS prompt
  374.          you had previously entered the command:
  375.  
  376.               SET LIB=/source
  377.  
  378.  
  379.          $lib/myfile would be interpreted as /source/myfile.  If  $lib
  380.          was  not  defined (did not exist in the current environment),
  381.          the utility would see that  argument  as  /myfile.  The  $lib
  382.          would be ignored completely.
  383.  
  384.          Environment variables are defined using the DOS command  SET,
  385.          or the PiCnix command  NSET,  and are active until deleted or
  386.          the system is re-started.  Please see the section in your DOS
  387.          manual about the SET command for additional information.
  388.  
  389.          Many of the utilities in the PiCnix package  use  environment
  390.          variables to set or change default options.
  391.  
  392.  
  393.     single quote ':
  394.  
  395.          The single quote is used to make one argument out of a string
  396.          of words.  For example:
  397.  
  398.                    'this is one argument'
  399.  
  400.          NOTE:  Everything  inside of a single quoted string is passed
  401.                 to the application as is.  No expansion of environment
  402.                 variables or wildcard characters are done.
  403.  
  404.  
  405.     double quote '"':
  406.  
  407.          The double quote is like the single  quote  except  that  the
  408.          single-escape  and  the  dollar  sign  (described  below) ARE
  409.          expanded.
  410.  
  411.  
  412.     Filespecs:
  413.  
  414.          File specifiers are made from 3 parts, 
  415.  
  416.               Wildcard characters * ?
  417.  
  418.               Environment variables $variable 
  419.  
  420.               Character classes [abf...] 
  421.  
  422.          For example: 
  423.  
  424.               necho  $user\* 
  425.                    uses  the  value of the environment variable "user" 
  426.                    as the path 
  427.  
  428.               necho *a*
  429.                    operates on file names that contain at least 1 'a'.  
  430.  
  431.               necho *.[qrzg]
  432.                    expands to  match  any  file  with  a  1  character 
  433.                    extension that is either q,r,z or g 
  434.  
  435.               necho  test?.*
  436.                    will match all file names that have 5 characters in 
  437.                    the  name  before  the  extension  and  the first 4
  438.                    characters are "test" 
  439.  
  440.          These  characters  enable  you  to  specify patterns that can 
  441.          match 0, 1,  or many filenames.  If more than one filename is 
  442.          matched,  all  of the filenames that matched become arguments 
  443.          to the utility.  For example,  since a star '*' all by itself 
  444.          matches all filenames in the current directory, the command
  445.  
  446.          more *  is the same as     more <file1> <file2> <file3> ...  
  447.  
  448.  
  449.          Let's assume that the following  files  are  in  the  current 
  450.          directory: 
  451.  
  452.               C1.A    C1.B    B1.A    B1.B    MYFILE    BLAH 
  453.  
  454.          star '*': 
  455.  
  456.               The star '*' matches 0 or more characters in a filename, 
  457.               including the dot '.'.  The argument * would be expanded 
  458.               into all of the filenames in the current directory.  The
  459.               argument B* would expand into 3 filenames, B1.A B1.B and 
  460.               BLAH.  The  argument *1.A would expand into 2 filenames, 
  461.               C1.A and B1.A.  The argument C*1.A would expand into one
  462.               filename, C1.A.  
  463.  
  464.  
  465.          question mark '?':
  466.  
  467.               The  question  mark  '?'  matches  any  one   character, 
  468.               including  the dot '.'.  For example,  the argument C1.? 
  469.               would expand into the filenames C1.A and C1.B.  However, 
  470.               the argument C1?.A would not match any of the  filenames 
  471.               in the current directory and so would not be expanded.  
  472.  
  473.  
  474.          left and right brackets '[' and ']': 
  475.  
  476.               The  left  and  right  brackets [] are used to construct
  477.               character  classes.   Character  classes   are   matched 
  478.               against any ONE (1) character, in the same manner as the 
  479.               question  mark  '?'.  The  left  bracket  '[' begins the
  480.               character class and  the  right  bracket  ']'  ends  the 
  481.               character  class.  A  character class contains a list of 
  482.               the characters that are allowed to match.  For  example, 
  483.               the  argument  C1.[ABC]  contains a character class that 
  484.               has three characters,  A,  B and C.  This argument would 
  485.               be  expanded  into  two  filenames,   C1.A  and  C1.B  .  
  486.  
  487.               Character classes can also contain ranges of characters.  
  488.               For example,  the pattern C1.[ABC] is equivalent to  the 
  489.               pattern C1.[A-C].  Finally,  if the first character in a 
  490.               character  class  is  an  exclamation  point  '!',   the 
  491.               character  class  matches  any  character  that  is  NOT 
  492.               specified  between  the  brackets.  Thus,  the  argument 
  493.               [!B]1.A would expand into the filename C1.A.  
  494.  
  495.           NOTE:  as a special case, patterns that end in a dot '.' will 
  496.                 not match any  filenames  that  have  extensions.  For 
  497.                 example,  the  pattern *.  will match all filenames in
  498.                 the current directory that do not have an extension.  
  499.                 
  500.  
  501.     Getting help for each utility: 
  502.  
  503.          Each utility in the  PiCnix  package  will  display  a  brief 
  504.          summary  of  what  it  does and what each of the command line 
  505.          options are if you  execute  it  with  the  argument  <switch 
  506.          character>?.  For  example,  if  your switch character is the 
  507.          default '/', you can find out what the utility 'more' does by
  508.          executing the following line at the DOS prompt: 
  509.  
  510.               more /?  
  511.  
  512.          NOTE:  In  the  description  for  each utility,  command line 
  513.                 options are shown with the switch  character  being  a 
  514.                 minus  sign  '-'.  You  need  to substitute the switch 
  515.                 character you are using if it is not the minus sign.  
  516.  
  517.  
  518.  
  519. History Log for PiCnix releases:
  520.  
  521. Changes Since Second Dated Release:
  522.  
  523.     cat.com
  524.     cp.com
  525.     cpdir.com
  526.     mv.com
  527.     mvdir.com
  528.     tee.com
  529.         each of these utilities have been changed to correctly recognize
  530.         when the destination disk is full.
  531.     
  532. Second Dated Release:  November 1, 1987
  533. Updated:  May 25, 1988
  534.  
  535.     Included in this release:
  536.  
  537.     cat.com chlabel.com chmod.com cp.com cpdir.com
  538.     df.exe diff.exe du.exe fgrep.com grep.exe head.com
  539.     ls.exe more.exe mv.com mvdir.com ncd.com ndate.com
  540.     necho.com nset.com ntime.com unset.com pwd.com rm.com
  541.     show.com strings.com switchar.com tail.com tee.com
  542.     touch.com wc.com
  543.  
  544.     New in this release:
  545.  
  546.     head.com tail.com
  547.  
  548.     Modified in this release:
  549.  
  550.     All of the utilities have had the following changed:
  551.                 1) All utilities now look for the environment variables
  552.                    PICNIX_SWITCHAR and PICNIX_FNCASE.  These environment
  553.                    variables can be used to specify the switch character
  554.                    and the case for printing filenames, respectively.
  555.                 2) The accent grave processing in the command line has
  556.                    been removed.  It turned out that adding this feature
  557.                    added around 6K bytes to most of the utilities.  It
  558.                    did not seem worth it.  The capability has been left
  559.                    in the sources for those who purchase them.  Let me
  560.                    know if you don't like this change.  I may put back
  561.                    accent grave processing at a later date.
  562.                 3) if a drive specifier is provided to a filespec, a slash
  563.                    character is no longer inserted after the ':' if one is
  564.                    not already there.  DOS users seemed to find this
  565.                    objectionable.  See the notice in the first dated release
  566.                    below for a description of what this did.  Now, specifying
  567.                    a drive with a relative path name is resolved relative to
  568.                    the drive's current directory.
  569.                 4) Many of the utilities have been changed to allow boolean
  570.                    command line switches (i.e., switches that changed the
  571.                    action from TRUE to FALSE or vice-versa ) to be set more
  572.                    than once in the command line.  For example, if the
  573.                    command   touch -c -c newfile   is executed, the first
  574.                    -c says to not allow touch to create files that did not
  575.                    previously exist.  The second -c says to undo the previous
  576.                    -c and allow touch to create files.  The primary use for
  577.                    this would be to undo the default values set in the
  578.                    environment variable for a utility.  For example, if I
  579.                    had set the environment variable   nset TOUCH = -c   and
  580.                    then wanted to create a file with touch, I can now execute
  581.                    the command   touch -c newfile  and get the expected
  582.                    result.
  583.                 5) Files that have the 'system' mode bit set are not
  584.                    automatically hidden anymore.  If a file is 'system' but
  585.                    not 'hidden', it will show up with ls and the other utilities.
  586.                 6) Utilities that always expanded tabs to spaces only do so now
  587.                    when tabs have been defined to something other than 8 spaces.
  588.                 7) If the switchar was '/' and a single-character filename
  589.                    existed at root (i.e., '\'), then using the option /? would
  590.                    result in strange error messages rather than printing help.
  591.                    This is now fixed.
  592.  
  593.     cat.com   : fixed so that if it is not in visible mode (-v) and tabs are
  594.                 not expanded, cat now does read()'s and write()'s instead of
  595.                 fgets()'s and fputs()'s.  This fixes the problem of trying to
  596.                 cat binary files that contain tabs and bytes equal to 0.  Also
  597.                 added the -x switch to tell cat explicitly to expand tabs to
  598.                 spaces.  It used to be the only way cat worked.
  599.  
  600.     diff.exe  : fixed the output to correspond to Unix's output more closely.
  601.                 Modified to now work with files with up to 2500 lines rather
  602.                 than with up to 2400 lines.  Changed to the Compact memory
  603.                 model.  Used to use a custom psuedo-virtual memory manager.
  604.                 Execution is now more dependent on available memory size
  605.                 but runs faster and the executable is smaller.  Fixed problem
  606.                 occurring when using -b switch.  Used to hang the computer.
  607.                 Fixed problem occurring with files >2500 lines.
  608.  
  609.     grep.exe
  610.     more.exe  : The regular expression operator '|' has been changed to the
  611.                 '!' character.  This was done because the DOS command
  612.                 interpreter always interprets the '|' character, even when
  613.                 it is within a string.  This means that it is impossible to
  614.                 use the '|' character as part of an argument to a program.
  615.                 The '!' character is not recognized by DOS and thus will
  616.                 not cause the problem.
  617.  
  618.     ls.exe    : ls .. now works correctly.  Before, ls would not display
  619.                 anything.  ls /l used to change filenames to lower case,
  620.                 even when they were supposed to be printed as upper case.
  621.                 This is now fixed.
  622.  
  623.     more.exe  : now displays the correct argument list in the help screen.
  624.  
  625.     ncd.com   : ncd validdir/.. now works correctly.  Before, ncd would
  626.                 usually remain in the current directory.  Now ncd searches
  627.                 for the directory validdir on CDPATH and then does the ..
  628.  
  629.     pwd.com   : pwd again allows for arguments to specify the drives to be
  630.                 checked for their current directory.  The option -a checks
  631.                 all drives.
  632.  
  633.     mv.com
  634.     mvdir.com : mv and mvdir now set the destination file's time and date to
  635.                 be the same as the source files time and date.  They also
  636.                 delete the destination file when any error occurs while
  637.                 writing the file.  Before they would just leave a partially
  638.                 written file around.  mvdir now tries to rename the source
  639.                 directory to be the destination directory before actually
  640.                 copying the directory over.
  641.  
  642.     wc.com    : now correctly counts the number of characters in the file.
  643.  
  644.  
  645.  
  646.  
  647. First Dated Release:  January 1, 1987
  648.  
  649.     Included in first dated release:
  650.  
  651.     cat.exe chlabel.exe chmod.exe cp.exe cpdir.exe
  652.     df.exe diff.exe du.exe
  653.     fgrep.exe grep.exe ls.exe
  654.     more.exe mv.exe mvdir.exe ncd.exe
  655.     ndate.exe necho.exe nset.exe unset.exe pwd.exe rm.exe
  656.     show.exe strings.exe switchar.exe tee.exe touch.exe wc.exe
  657.  
  658.     New in this release:
  659.  
  660.     ndate.exe nset.exe unset.exe ntime.exe strings.exe
  661.  
  662.     Modified in this release:
  663.  
  664.     All of the utilities have had the following changed:
  665.                 1) The accent grave processing in the command line has
  666.                    been added.  The single escape character has been
  667.                    changed to a pound sign '#' when the switch character
  668.                    is the forward slash '/'.
  669.                 2) if a drive specifier is provided to a filespec, a slash
  670.                    character is inserted after the ':' if one is not
  671.                    already there.  For example,
  672.                     cp a:this .
  673.                    will become a:/this before cp checks for the file.
  674.  
  675.     cp.exe, cpdir.exe, mv.exe, mvdir.exe:
  676.                 Modified the buffer size for copies to 32K from 8K.
  677.  
  678.     diff.exe  : fixed the case where a directory is given as one of the
  679.                 filenames.  Before, the entire pathname of the other
  680.                 argument was appended to the directory name.  Now, only
  681.                 the filename part of the other argument is appended to the 
  682.                 directory.
  683.  
  684.     fgrep.exe : fixed -i (ignore case) option.  Before fix, lines with
  685.                 matching pattern were printed in all lower case.  Now,
  686.                 lines with matching pattern are printed as they were
  687.                 read from the file.
  688.  
  689.     grep.exe  : added -i (ignore case) option.  Before, this option would
  690.                 report that it wasn't implemented.
  691.  
  692.     ls.exe    : fixed the -u (unsorted filenames) option.  Before, sorting
  693.                 of filenames was done at a very low level and it was not
  694.                 an option to not do the sorting.  Now the low level routines
  695.                 can be told not to do the sorting.
  696.  
  697.     ncd.exe   : changed the method by which the environment is modified.
  698.                 The old ncd would not work correctly in batch files.  It
  699.                 left a copy of itself around in memory.
  700.  
  701.     pwd.exe   : pwd no longer allows arguments other than -?.  pwd always
  702.                 shows the current working directory on the default drive
  703.                 only.
  704.  
  705.     rm.exe    : now correctly removes hidden and system files during the
  706.                 -r (recursive) option.
  707.  
  708.     show.exe  : fixed -p (search path) option.  Before fix, if the command
  709.                 line argument was -pPATH with no space between the -p and 
  710.                 the path, this would not be handled correctly.  Also, it
  711.                 is now allowed to specify the path in lower case, i.e.,
  712.                 -p path.
  713.