1 DIFFERENCES
  Compares  the  contents  of two disk files and displays a listing of 
  the records that do not match.

  Format:


    DIFFERENCES  input1-file-spec [input2-file-spec]
                                                        
2 Parameters

 input1-file-spec

  Specifies the first file to be compared. The file specification must 
  include  a  file  name  and a file type. Wildcard characters are not 
  allowed. 

 input2-file-spec

  Specifies the second file to be compared. Unspecified fields default 
  to the corresponding fields in input1-file-spec. Wildcard characters 
  are not allowed.

  If you do not  specify  a  secondary  input  file,  the  DIFFERENCES 
  command uses the next lower version of the primary input file.


2 Command_Qualifiers

/CHANGE_BAR

 /CHANGE_BAR[=([change-char][,[NO]NUMBER])]

  Marks with the specified character in the left margin each  line  in 
  the  input1  file  that  differs  from the corresponding line in the 
  input2 file. If you do not  specify  a  change  bar  character,  the 
  default is an exclamation point (!) for ASCII output. If you specify 
  hexadecimal or octal output (see /MODE qualifier),  the  change  bar 
  character  is ignored and differences are marked by a "***CHANGE***" 
  string in the record header. The keyword  NONUMBER  suppresses  line 
  numbers  in  the  listing.  If  neither  the NUMBER nor the NONUMBER 
  keyword is specified, the default is controlled by  the  /[NO]NUMBER 
  command qualifier. If only one option is specified, you can omit the 
  parentheses. To specify both  a  change  bar  character  and  either 
  NUMBER  or  NONUMBER,  separate the options with a comma and enclose 
  the list in parentheses; for example, /CHANGE_BAR=($,NUMBER). If you 
  use  an  exclamation  point  as  the  specified  character, you must 
  enclose     it     in     quotation     marks;     for      example, 
  /CHANGE_BAR=("!",NUMBER). 

/COMMENT_DELIMITER
 /COMMENT_DELIMITER[=(character[,...])]

  Ignores  lines  starting  with a specified comment character. If the 
  comment character is an  exclamation  point  or  semicolon,  it  can 
  appear  anywhere  in  the  line  and  characters to the right of the 
  character are ignored. If you specify just one  character,  you  can 
  omit   the   parentheses.  Lowercase  characters  are  automatically 
  converted to uppercase unless they are enclosed in quotation  marks. 
  Nonalphanumeric  characters  (such  as  ! and ,) must be enclosed in 
  quotation marks. You can specify up  to  32  comment  characters  by 
  typing  the  character  itself  or  one  of  the following keywords. 
  (Keywords can be abbreviated provided that the resulting keyword  is 
  not  ambiguous  and  has at least two characters; single letters are 
  treated as delimiters.)

       Keyword            Character

       COLON              Colon (:)

       COMMA              Comma (,)

       EXCLAMATION        Exclamation point (!)

       FORM_FEED          Form feed

       LEFT               Left bracket ([)

       RIGHT              Right bracket (])

       SEMI_COLON         Semicolon (;)

       SLASH              Slash (/)

       SPACE              Space

       TAB                Horizontal tab


  The  /COMMENT_DELIMITER  qualifier  is  used  with  or  without  the 
  /IGNORE=COMMENTS  qualifier  to  indicate  which  comments are to be 
  ignored. 

  If both the uppercase and lowercase forms of a letter are to be used 
  as  comment  characters, the letter must be specified twice, once in 
  uppercase and once in lowercase. If you  do  not  include  either  a 
  comment   character   or  a  keyword   with  the  /COMMENT_DELIMITER 
  qualifier, DIFFERENCES assumes a default comment character based  on 
  the  file  type.  For  some  file  types  (COB and FOR), the default 
  comment characters are considered  valid  delimiters  only  if  they 
  appear  in  the  first  column  of  a  line.  Multicharacter comment 
  characters are not allowed.

/IGNORE

 /IGNORE=(keyword[,...])

  Inhibits the comparison of the  specified  characters,  strings,  or 
  records.  Also controls whether the comparison records are output to 
  the listing file as edited records or exactly as  they  appeared  in 
  the  input  file.  If you specify only one keyword, you can omit the 
  parentheses. The keyword parameter refers either to a character or a 
  keyword.  The first set of keywords determines what, if anything, is 
  ignored  during  file  comparison;  the  second  set   of   keywords 
  determines  whether  or  not  ignored characters are included in the 
  output. The following keywords are valid  options  for  the  /IGNORE 
  qualifier: 

  BLANK_LINES       Blank lines between data lines.

  COMMENTS          Data  following  a  comment  character.  (Use  the 
                    /COMMENT_DELIMITER qualifier to designate  one  or 
                    more nondefault comment delimiters.)

  FORM_FEEDS        Form feed character.

  HEADER[=n]        First n records of  the  file,  beginning  with  a 
                    record  whose  first character is a form feed. The 
                    first record is not ignored if the only  character 
                    it contains is a form  feed.  (The n indicates the 
                    number of records and defaults to 2. A record with 
                    a single form feed is not counted.)

  TRAILING_SPACES   Space and tab characters at the end of a data
                    line.

  SPACING           Extra blank spaces or tabs within data lines.

  EDITED            Omits ignored characters from the output
                    records.

  EXACT             Includes ignored characters in the output
                    records.

  PRETTY            Formats output records.
   
  Each  data  line  is  checked  for COMMENTS, FORM_FEEDS, HEADER, and 
  SPACING before it is tested  for  TRAILING_SPACES  and  then  BLANK_ 
  LINES.  Therefore,  if  you  direct  DIFFERENCES to ignore COMMENTS, 
  TRAILING_SPACES, and BLANK_LINES, it ignores a record that  contains 
  several spaces or blank lines followed by a comment.

  By default, the DIFFERENCES command compares every character in each 
  file and reports all  differences.  Also,  by  default,  DIFFERENCES 
  lists  records  in  the  output  file  with  all  ignored characters 
  deleted. 

  If you specify /PARALLEL, output records are  always  formatted.  To 
  format output records, specify the following characters:

  Character                        Formatted Output

  Tab (CTRL/I)                     1-8 spaces

  RETURN (CTRL/M)                  <CR>

  Line feed (CTRL/J)               <LF>

  Vertical tab (CTRL/K)            <VT>

  Form feed (CTRL/L)               <FF>

  Other nonprinting characters     . (period)

/MATCH
 /MATCH=size

  Specifies  the  number of records that should indicate matching data 
  after a difference is found. By  default,  after  DIFFERENCES  finds 
  unmatched  records, it assumes that the files once again match after 
  it finds  three  sequential  records  that  match.  Use  the  /MATCH 
  qualifier to override the default match size of 3.

  You can increase the /MATCH value if you think that  DIFFERENCES  is 
  incorrectly matching sections of the master and revision input files 
  after it has detected a difference.

/MAXIMUM_DIFFERENCES
 /MAXIMUM_DIFFERENCES=n

  Terminates DIFFERENCES after a specified number of unmatched records 
  (the value n) is found.

  The number of unmatched records is determined by finding the maximum 
  number  of difference records for each difference section and adding 
  them together.

  If DIFFERENCES reaches the maximum number of  differences  that  you 
  specify, it will output only those records that were detected before 
  the maximum was reached. Also, it will  output,  a  maximum  of  one 
  listing format and return a warning message.

  By  default,  there is no maximum number of differences. All records 
  in the specified input files are compared.

/MERGED
 /MERGED[=n]

  Specifies that the output file contain a merged list of  differences 
  with the specified number of matched records listed after each group 
  of unmatched records. The specified number (the  value  n)  must  be 
  less  than or equal to the number specified in the /MATCH qualifier. 
  By default, DIFFERENCES produces a merged listing with  one  matched 
  record  listed  after  each  set  of  unmatched  records  (that  is, 
  /MERGED=1). If neither  /MERGED  nor  /SEPARATED  nor  /PARALLEL  is 
  specified,  the  resulting output is merged, with one matched record 
  following each unmatched record.

  Use the /MERGED qualifier to override the default value of n  or  to 
  include a merged listing with other types of output.

/MODE
 /MODE=(radix[,...])

  Specifies  the format of the output. You can request that the output 
  be formatted in one or more radix modes by specifying the  following 
  keywords, which may be abbreviated: ASCII (default), HEXADECIMAL, or 
  OCTAL. If you specify only one radix, you can omit the parentheses.

  By default, DIFFERENCES writes the output  file  in  ASCII.  If  you 
  specify  more  than  one radix, the output listing contains the file 
  comparison in each specified radix. When you  specify  two  or  more 
  radix modes, separate them with commas.

  If  you specify /PARALLEL or /SLP, /MODE is ignored for that listing 
  form. 

/NUMBER

 /NUMBER (default)
 /NONUMBER

  Controls whether line numbers are to be generated for records in the
  listing.

/OUTPUT
 /OUTPUT[=file-spec]

  Specifies an output file to receive  the  list  of  differences.  By 
  default,  the output is written to the current SYS$OUTPUT device. If 
  the file-spec parameter is not specified, the output is directed  to 
  the first input file with a file type of DIF. Wildcard characters 
  are not allowed.

  When you specify /OUTPUT, you can control the  defaults  applied  to 
  the  output  file specification as described in the VMS DCL Concepts 
  Manual. The default output file type is DIF.

/PARALLEL
 /PARALLEL[=n]

  Lists the records  with  differences  side  by  side.  The  value  n 
  specifies  the  number  of  matched  records  to  merge  after  each 
  unmatched record; the value n must be  a nonnegative decimal  number 
  less than or equal to the number specified in /MATCH.

  By  default,  DIFFERENCES  does  not list records after each list of 
  unmatched records. Also by default, DIFFERENCES creates only a  list 
  of merged differences.

/SEPARATED

  /SEPARATED[=(input1-file-spec[,input2-file-spec])]

  Lists  sequentially  only  the  records from the specified file that 
  contain differences. If no files are specified, a  separate  listing 
  is  generated  for each file. If only one file is specified, you can 
  omit the parentheses. To specify the input1-file-spec parameter, use 
  either  the  first input file specified as the DIFFERENCES parameter 
  or the keyword MASTER.  To  specify the input2-file-spec  parameter, 
  use  either  the  second  input  file  specified  as the DIFFERENCES 
  parameter or the keyword REVISION.

  By default, DIFFERENCES creates only a merged list of differences.
    
/SLP

 /SLP

  Requests that DIFFERENCES produce an output file suitable for  input 
  to the SLP editor. If you use the /SLP qualifier, you cannot specify 
  any of the following output  file  qualifiers:  /MERGED,  /PARALLEL, 
  /SEPARATED, or /CHANGE_BAR.

  Use the output file produced by the SLP qualifier as input to SLP to
  update the master input file, that is, to make the master input file
  match the revision input file.

  When you specify /SLP and you do not  specify  /OUTPUT,  DIFFERENCES
  writes  the  output  file  to  a file with the same file name as the
  master input file and a file type of DIF.

/WIDTH
 /WIDTH=n

 Specifies the width of lines in the output listing.

  By default, output is 132 characters wide, unless output is directed
  to  the terminal.  In that case, the output line width is controlled
  by the terminal line width.  Use the SET TERMINAL command to  change
  the terminal line width.

/WINDOW
 /WINDOW=size

  Searches the number of records specified (the value for size) before 
  a record is declared as unmatched. By default, DIFFERENCES  searches 
  to  the  ends  of  both  input  files  before  listing  a  record as 
  unmatched. 

  The window size is the minimum size of a  differences  section  that 
  will cause DIFFERENCES to lose synchronization between the two input 
  files. 

2 Examples

  1.   $ DIFFERENCES EXAMPLE.TXT

       ************
       File DISK1:[GEORGE.TEXT]EXAMPLE.TXT;2
           1   DEMONSTRATION 
           2   OF V5.0 DIFFERENCES
           3   UTILITY
       ******
       File DISK1:[GEORGE.TEXT]EXAMPLE.TXT;1
           1   DEMONSTRATION 
           2   OF VMS DIFFERENCES
           3   UTILITY
       ************

       Number of difference sections found: 1
       Number of difference records found: 2

       DIFFERENCES/MERGED=1-
              DISK1:[GEORGE.TEXT]EXAMPLE.TXT;2
              DISK1:[GEORGE.TEXT]EXAMPLE.TXT;1

  The DIFFERENCES command compares the contents of the two most recent
  versions  of  the file EXAMPLE.TXT in the current default directory.
  DIFFERENCES compares every character in every  record  and  displays
  the results at the terminal.
