prs - print an SCCS file (DEVELOPMENT)
prs [-a][-d dataspec][-r[SID]] file... prs [ -e| -l] -c cutoff [-d dataspec] file... prs [ -e| -l] -r[SID][-d dataspec]file...
The prs utility writes to standard output parts or all of an SCCS file in a user-supplied format.
The prs utility supports the XBD specification, Utility Syntax Guidelines , except that the -r option has an optional option-argument. This optional option-argument cannot be presented as a separate argument. The following options are supported:
- -d dataspec
- Specify the output data specification. The dataspec is a string consisting of SCCS file data keywords (see
Data Keywords ) interspersed with optional user-supplied text.- -r[SID]
- Specify the SCCS identification string (SID) of a delta for which information is desired. If no SID option-argument is specified, the SID of the most recently created delta is assumed.
- -e
- Request information for all deltas created earlier than and including the delta designated via the -r option or the date-time given by the -c option.
- -l
- Request information for all deltas created later than and including the delta designated via the -r option or the date-time given by the -c option.
- -c cutoff
- Indicate the cutoff date-time, in the form:
For the YY component, values in the range [69-99] refer to years in the twentieth century (1969 to 1999 inclusive); values in the range [00-68] refer to years in the twenty-first century (2000 to 2068 inclusive). No changes (deltas) to the SCCS file that were created after the specified cutoff date-time are included in the output. Units omitted from the date-time default to their maximum possible values; for example, -c 7502 is equivalent to -c 750228235959.YY[MM[DD[HH[MM[SS]]]]]
- -a
- Request writing of information for both removed, that is, delta type = R (see rmdel)type and existing, that is, delta type = D, deltas. If the a-type= option is not specified, information for existing deltas only is provided.
The following operand is supported:
- file
- A pathname of an existing SCCS file or a directory. If file is a directory, prs behaves as though each file in the directory were specified as a named file, except that non-SCCS files (last component of the pathname does not begin with s.) and unreadable files are silently ignored. If a single instance file is specified as -, the standard input is read; each line of the standard input is taken to be the name of an SCCS file to be processed. Non-SCCS files and unreadable files are silently ignored.
The standard input is a text file used only when the file operand is specified as -. Each line of the text file is interpreted as an SCCS pathname.
Any SCCS files displayed are files of an unspecified format.
The following environment variables affect the execution of prs:
- LANG
- Provide a default value for the internationalisation variables that are unset or null. If LANG is unset or null, the corresponding value from the implementation-dependent default locale will be used. If any of the internationalisation variables contains an invalid setting, the utility will behave as if none of the variables had been defined.
- LC_ALL
- If set to a non-empty string value, override the values of all the other internationalisation variables.
- LC_CTYPE
- Determine the locale for the interpretation of sequences of bytes of text data as characters (for example, single- as opposed to multi-byte characters in arguments and input files).
- LC_MESSAGES
- Determine the locale that should be used to affect the format and contents of diagnostic messages written to standard error.
- NLSPATH
- Determine the location of message catalogues for the processing of LC_MESSAGES .
Default.
The standard output is a text file whose format is dependent on the data keywords specified with the -d option.Data Keywords
Data keywords specify which parts of an SCCS file are to be retrieved and output. All parts of an SCCS file have an associated data keyword. A data keyword may appear in a dataspec multiple times. The information written by prs consists of: (1) the user-supplied text; and (2) appropriate values (extracted from the SCCS file) substituted for the recognised data keywords in the order of appearance in the dataspec. The format of a data keyword value is either simple (S), in which keyword substitution is direct, or multi-line (M).
User-supplied text is any text other than recognised data keywords. A tab character is specified by \t and newline by \n. When the -r option is not specified, the default dataspec is:
and the following dataspec is used for each selected delta::PN::\n\n
:Dt:\t:DL:\nMRs:\n:MR:COMMENTS:\n:C:\n
SCCS File Data Keywords Keyword Data Item File Section Value Format :Dt: Delta information Delta Table See below* S :DL: Delta line statistics " :Li:/:Ld:/:Lu: S :Li: Lines inserted by Delta " nnnnn S :Ld: Lines deleted by Delta " nnnnn S :Lu: Lines unchanged by Delta " nnnnn S :DT: Delta type " D or R S :I: SCCS ID string (SID) " See below** S :R: Release number " nnnn S :L: Level number " nnnn S :B: Branch number " nnnn S :S: Sequence number " nnnn S :D: Date delta created " :Dy:/:Dm:/:Dd: S :Dy: Year delta created " nn S :Dm: Month delta created " nn S :Dd: Day delta created " nn S :T: Time delta created " :Th:::Tm:::Ts: S :Th: Hour delta created " nn S :Tm: Minutes delta created " nn S :Ts: Seconds delta created " nn S :P: Programmer who created Delta " logname S :DS: Delta sequence number " nnnn S :DP: Predecessor Delta seq-no. " nnnn S :DI: Seq-no. of deltas included, excluded or ignored " :Dn:/:Dx:/:Dg: S :Dn: Deltas included (seq #) " :DS:~:DS:... S :Dx: Deltas excluded (seq #) " :DS:~:DS:... S :Dg: Deltas ignored (seq #) " :DS:~:DS:... S :MR: MR numbers for delta " text M :C: Comments for delta " text M :UN: User names User Names text M :FL: Flag list Flags text M :Y: Module type flag " text S :MF: MR validation flag " yes or no S :MP: MR validation pgm name " text S :KF: Keyword error, warning flag " yes or no S :KV: Keyword validation string " text S :BF: Branch flag " yes or no S :J: Joint edit flag " yes or no S :LK: Locked releases " :R:... S :Q: User-defined keyword " text S :M: Module name " text S :FB: Floor boundary " :R: S :CB: Ceiling boundary " :R: S :Ds: Default SID " :I: S :ND: Null delta flag " yes or no S :FD: File descriptive text Comments text M :BD: Body Body text M :GB: Gotten body " text M :W: A form of what string N/A :Z::M:\t:I: S :A: A form of what string N/A :Z::Y: :M: :I::Z: S :Z: what string delimiter N/A @(#) S :F: SCCS filename N/A text S :PN: SCCS file pathname N/A text S
- *
- :Dt: = :DT: :I: :D: :T: :P: :DS: :DP:
- **
- :R:.:L:.:B:.:S: if the delta is a branch delta (:BF: == yes) :R:.:L: if the delta is not a branch delta (:BF: == no)
Used only for diagnostic messages.
None.
None.
The following exit values are returned:
- 0
- Successful completion.
- >0
- An error occurred.
Default.
None.
- The following example:
prs -d "User Names for :F: are:\n:UN:" s.file
may write to standard output:
User Names for s.file are: xyz 131 abc
- The following example:
prs -d "Delta for pgm :M:: :I: - :D: By :P:" -r s.file
may write to standard output:
Delta for pgm main.c: 3.7 - 77/12/01 By cas
- As a special case:
prs s.file
may write to standard output:
s.file: <blank line> D 1.1 77/12/01 00:00:00 cas 1 000000/00000/00000 MRs: bl78-12345 bl79-54321 COMMENTS: this is the comment line for s.file initial delta <blank line>
for each delta table entry of the D type. The only option allowed to be used with this special case is the -a option.
A version of prs that fully supports the XBD specification, Utility Syntax Guidelines may be introduced in a future issue.
admin, delta, get, what.