Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ get(1) — sysv — mips UMIPS RISC/os 4.52

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

admin(1)

delta(1)

prs(1)

what(1)

help(1)



GET(1-SysV)         RISC/os Reference Manual          GET(1-SysV)



NAME
     get - get a version of an SCCS file

SYNOPSIS
     get [-rSID] [-ccutoff] [-ilist] [-xlist] [-wstring] [-aseq-
     no.] [-k] [-e] [-l[p] [-p] [-m]
          [-n] [-s] [-b] [-g] [-t] file ...

DESCRIPTION
     get generates an ASCII text file from each named SCCS file
     according to the specifications given by its keyletter argu-
     ments, which begin with -.  The arguments may be specified
     in any order, but all keyletter arguments apply to all named
     SCCS files.  If a directory is named, get behaves as though
     each file in the directory were specified as a named file,
     except that non-SCCS files (last component of the path name
     does not begin with s.)  and unreadable files are silently
     ignored.  If a name of - is given, the standard input is
     read; each line of the standard input is taken to be the
     name of an SCCS file to be processed.  Again, non-SCCS files
     and unreadable files are silently ignored.

     The generated text is normally written into a file called
     the g-file whose name is derived from the SCCS file name by
     simply removing the leading s.; (see also FILES, below).

     Each of the keyletter arguments is explained below as though
     only one SCCS file is to be processed, but the effects of
     any keyletter argument applies independently to each named
     file.

     -rSID      The SCCS IDentification string (SID) of the ver-
                sion (delta) of an SCCS file to be retrieved.
                Table~1 below shows, for the most useful cases,
                what version of an SCCS file is retrieved (as
                well as the SID of the version to be eventually
                created by delta(1) if the -e keyletter is also
                used), as a function of the SID specified.

     -ccutoff   Cutoff date-time, in the form:

                     YY[MM[DD[HH[MM[SS]]]]]

                No changes (deltas) to the SCCS file which were
                created after the specified cutoff date-time are
                included in the generated ASCII text file.  Units
                omitted from the date-time default to their max-
                imum possible values; that is, -c7502 is
                equivalent to -c750228235959.  Any number of
                non-numeric characters may separate the various
                2-digit pieces of the cutoff date-time.  This
                feature allows one to specify a cutoff date in



                         Printed 1/15/91                   Page 1





GET(1-SysV)         RISC/os Reference Manual          GET(1-SysV)



                the form:  "-c77/2/2 9:22:25".  Note that this
                implies that one may use the %E% and %U% identif-
                ication keywords (see below) for nested gets
                within the input to a command:

                     ~!get  "-c%E%  %U%"  s.file

     -ilist     A list of deltas to be included (forced to be
                applied) in the creation of the generated file.
                The list has the following syntax:

                     <list> ::= <range> | <list> , <range>
                     <range> ::= SID | SID - SID

                SID, the SCCS Identification of a delta, may be
                in any form shown in the ``SID Specified'' column
                of Table 1.

     -xlist     A list of deltas to be excluded in the creation
                of the generated file.  See the -i keyletter for
                the list format.

     -e         Indicates that the get is for the purpose of
                editing or making a change (delta) to the SCCS
                file via a subsequent use of delta(1).  The -e
                keyletter used in a get for a particular version
                (SID) of the SCCS file prevents further gets for
                editing on the same SID until delta is executed
                or the j (joint edit) flag is set in the SCCS
                file [see admin(1)].  Concurrent use of get -e
                for different SIDs is always allowed.

                If the g-file generated by get with an -e
                keyletter is accidentally ruined in the process
                of editing it, it may be regenerated by re-
                executing the get command with the -k keyletter
                in place of the -e keyletter.

                SCCS file protection specified via the ceiling,
                floor, and authorized user list stored in the
                SCCS file [see admin(1)] are enforced when the -e
                keyletter is used.

     -b         Used with the -e keyletter to indicate that the
                new delta should have an SID in a new branch as
                shown in Table 1.  This keyletter is ignored if
                the b flag is not present in the file [see
                admin(1)] or if the retrieved delta is not a leaf
                delta.  (A leaf delta is one that has no succes-
                sors on the SCCS file tree.)
                Note: A branch delta may always be created from a
                non-leaf delta.  Partial SIDs are interpreted as



 Page 2                  Printed 1/15/91





GET(1-SysV)         RISC/os Reference Manual          GET(1-SysV)



                shown in the ``SID Retrieved'' column of Table 1.

     -k         Suppresses replacement of identification keywords
                (see below) in the retrieved text by their value.
                The -k keyletter is implied by the -e keyletter.

     -l[p]      Causes a delta summary to be written into an l-
                file.  If -lp is used then an l-file is not
                created; the delta summary is written on the
                standard output instead.  See FILES for the for-
                mat of the l-file.

     -p         Causes the text retrieved from the SCCS file to
                be written on the standard output.  No g-file is
                created.  All output which normally goes to the
                standard output goes to file descriptor 2
                instead, unless the -s keyletter is used, in
                which case it disappears.

     -s         Suppresses all output normally written on the
                standard output.  However, fatal error messages
                (which always go to file descriptor 2) remain
                unaffected.

     -m         Causes each text line retrieved from the SCCS
                file to be preceded by the SID of the delta that
                inserted the text line in the SCCS file.  The
                format is:  SID, followed by a horizontal tab,
                followed by the text line.

     -n         Causes each generated text line to be preceded
                with the %M% identification keyword value (see
                below).  The format is:  %M% value, followed by a
                horizontal tab, followed by the text line.  When
                both the -m and -n keyletters are used, the for-
                mat is:  %M% value, followed by a horizontal tab,
                followed by the -m keyletter generated format.

     -g         Suppresses the actual retrieval of text from the
                SCCS file.  It is primarily used to generate an
                l-file, or to verify the existence of a particu-
                lar SID.

     -t         Used to access the most recently created delta in
                a given release (e.g., -r1), or release and level
                (e.g., -r1.2).

     -w string  Substitute string for all occurrences of %W% when
                getting the file.

     -aseq-no.  The delta sequence number of the SCCS file delta
                (version) to be retrieved [see sccsfile(4)].



                         Printed 1/15/91                   Page 3





GET(1-SysV)         RISC/os Reference Manual          GET(1-SysV)



                This keyletter is used by the comb(1) command; it
                is not a generally useful keyletter.  If both the
                -r and -a keyletters are specified, only the -a
                keyletter is used.  Care should be taken when
                using the -a keyletter in conjunction with the -e
                keyletter, as the SID of the delta to be created
                may not be what one expects.  The -r keyletter
                can be used with the -a and -e keyletters to con-
                trol the naming of the SID of the delta to be
                created.

     For each file processed, get responds (on the standard out-
     put) with the SID being accessed and with the number of
     lines retrieved from the SCCS file.

     If the -e keyletter is used, the SID of the delta to be made
     appears after the SID accessed and before the number of
     lines generated.  If there is more than one named file or if
     a directory or standard input is named, each file name is
     printed (preceded by a new-line) before it is processed.  If
     the -i keyletter is used included deltas are listed follow-
     ing the notation ``Included''; if the -x keyletter is used,
     excluded deltas are listed following the notation
     ``Excluded''.

      TABLE 1. Determination of SCCS Identification String

  SID*    -b Keyletter      Other          SID     SID of Delta
SpecifiedUsed†ConditionsRetrievedtobeCreated
none‡          no      R defaults to mR mR.mL     mR.(mL+1)
________________________________________________________________
none‡yesRdefaultstomRmR.mLmR.mL.(mB+1).1
R              no      R > mR           mR.mL     R.1***
________________________________________________________________
R______________no______R_=_mR___________mR.mL_____mR.(mL+1)_____
R             yes      R > mR           mR.mL     mR.mL.(mB+1).1
________________________________________________________________
R_____________yes______R_=_mR___________mR.mL_____mR.mL.(mB+1).1
R              -       R < mR and       hR.mL**   hR.mL.(mB+1).1
                       R does not exist
________________________________________________________________
R              -       Trunk succ.#     R.mL      R.mL.(mB+1).1
                       in release > R
andRexists
R.L            no      No trunk succ.   R.L       R.(L+1)
________________________________________________________________
R.L___________yes______No_trunk_succ.___R.L_______R.L.(mB+1).1__
R.L            -       Trunk succ.      R.L       R.L.(mB+1).1
                       in release > R

R.L.B          no      No branch succ.  R.L.B.mS  R.L.B.(mS+1)




 Page 4                  Printed 1/15/91





GET(1-SysV)         RISC/os Reference Manual          GET(1-SysV)



________________________________________________________________
R.L.ByesNobranchsucc.R.L.B.mSR.L.(mB+1).1
R.L.B.S        no      No branch succ.  R.L.B.S   R.L.B.(S+1)
________________________________________________________________
R.L.B.S_______yes______No_branch_succ.__R.L.B.S___R.L.(mB+1).1__
R.L.B.S        -       Branch succ.     R.L.B.S   R.L.(mB+1).1


     *     ``R'', ``L'', ``B'', and ``S'' are the ``release'',
           ``level'', ``branch'', and ``sequence'' components of
           the SID, respectively; ``m'' means ``maximum''.  Thus,
           for example, ``R.mL'' means ``the maximum level number
           within release R''; ``R.L.(mB+1).1'' means ``the first
           sequence number on the new branch (i.e., maximum
           branch number plus one) of level L within release R''.
           Note that if the SID specified is of the form ``R.L'',
           ``R.L.B'', or ``R.L.B.S'', each of the specified com-
           ponents must exist.
     **    ``hR'' is the highest existing release that is lower
           than the specified, nonexistent, release R.
     ***   This is used to force creation of the first delta in a
           new release.
     #     Successor.
     †     The -b keyletter is effective only if the b flag [see
           admin(1)] is present in the file.  An entry of - means
           ``irrelevant''.
     ‡     This case applies if the d (default SID) flag is not
           present in the file.  If the d flag is present in the
           file, then the SID obtained from the d flag is inter-
           preted as if it had been specified on the command
           line.  Thus, one of the other cases in this table
           applies.

IDENTIFICATION KEYWORDS
     Identifying information is inserted into the text retrieved
     from the SCCS file by replacing identification keywords with
     their value wherever they occur.  The following keywords may
     be used in the text stored in an SCCS file:

     Keyword   Value
     %M%       Module name:  either the value of the m flag in
               the file [see admin(1)], or if absent, the name of
               the SCCS file with the leading s. removed.
     %I%       SCCS identification (SID) (%R%.%L%.%B%.%S%) of the
               retrieved text.
     %R%       Release.
     %L%       Level.
     %B%       Branch.
     %S%       Sequence.
     %D%       Current date (YY/MM/DD).
     %H%       Current date (MM/DD/YY).
     %T%       Current time (HH:MM:SS).
     %E%       Date newest applied delta was created (YY/MM/DD).



                         Printed 1/15/91                   Page 5




GET(1-SysV)         RISC/os Reference Manual          GET(1-SysV)



     %G%       Date newest applied delta was created (MM/DD/YY).
     %U%       Time newest applied delta was created (HH:MM:SS).
     %Y%       Module type:  value of the t flag in the SCCS file
               [see admin(1)].
     %F%       SCCS file name.
     %P%       Fully qualified SCCS file name.
     %Q%       The value of the q flag in the file [see
               admin(1)].
     %C%       Current line number.  This keyword is intended for
               identifying messages output by the program such as
               ``this should not have happened'' type errors.  It
               is not intended to be used on every line to pro-
               vide sequence numbers.
     %Z%       The 4-character string @(#) recognizable by
               what(1).
     %W%       A shorthand notation for constructing what(1)
               strings for UNIX system program files.
               %W% = %Z%%M%<horizontal-tab>%I%
     %A%       Another shorthand notation for constructing
               what(1) strings for non-UNIX system program files.
               %A% = %Z%%Y% %M% %I%%Z%

     Several auxiliary files may be created by get.  These files
     are known generically as the g-file, l-file, p-file, and z-
     file.  The letter before the hyphen is called the tag.  An
     auxiliary file name is formed from the SCCS file name:  the
     last component of all SCCS file names must be of the form
     s.module-name, the auxiliary files are named by replacing
     the leading s with the tag.  The g-file is an exception to
     this scheme:  the g-file is named by removing the s. prefix.
     For example, s.xyz.c, the auxiliary file names would be
     xyz.c, l.xyz.c, p.xyz.c, and z.xyz.c, respectively.

     The g-file, which contains the generated text, is created in
     the current directory (unless the -p keyletter is used).  A
     g-file is created in all cases, whether or not any lines of
     text were generated by the get.  It is owned by the real
     user.  If the -k keyletter is used or implied its mode is
     644; otherwise its mode is 444.  Only the real user need
     have write permission in the current directory.

     The l-file contains a table showing which deltas were
     applied in generating the retrieved text.  The l-file is
     created in the current directory if the -l keyletter is
     used; its mode is 444 and it is owned by the real user.
     Only the real user need have write permission in the current
     directory.

     Lines in the l-file have the following format:

          a.   A blank character if the delta was applied;
               * otherwise.



 Page 6                  Printed 1/15/91





GET(1-SysV)         RISC/os Reference Manual          GET(1-SysV)



          b.   A blank character if the delta was applied or was
               not applied and ignored;
               * if the delta was not applied and was not
               ignored.
          c.   A code indicating a ``special'' reason why the
               delta was or was not applied:
                    ``I'': Included.
                    ``X'': Excluded.
                    ``C'': Cut off (by a -c keyletter).
          d.   Blank.
          e.   SCCS identification (SID).
          f.   Tab character.
          g.   Date and time (in the form YY/MM/DD HH:MM:SS) of
               creation.
          h.   Blank.
          i.   Login name of person who created delta.

          The comments and MR data follow on subsequent lines,
          indented one horizontal tab character.  A blank line
          terminates each entry.

     The p-file is used to pass information resulting from a get
     with an -e keyletter along to delta.  Its contents are also
     used to prevent a subsequent execution of get with an -e
     keyletter for the same SID until delta is executed or the
     joint edit flag, j, [see admin(1)] is set in the SCCS file.
     The p-file is created in the directory containing the SCCS
     file and the effective user must have write permission in
     that directory.  Its mode is 644 and it is owned by the
     effective user.  The format of the p-file is:  the gotten
     SID, followed by a blank, followed by the SID that the new
     delta will have when it is made, followed by a blank, fol-
     lowed by the login name of the real user, followed by a
     blank, followed by the date-time the get was executed, fol-
     lowed by a blank and the -i keyletter argument if it was
     present, followed by a blank and the -x keyletter argument
     if it was present, followed by a new-line.  There can be an
     arbitrary number of lines in the p-file at any time; no two
     lines can have the same new delta SID.

     The z-file serves as a lock-out mechanism against simultane-
     ous updates.  Its contents are the binary (2 bytes) process
     ID of the command (i.e., get) that created it.  The z-file
     is created in the directory containing the SCCS file for the
     duration of get.  The same protection restrictions as those
     for the p-file apply for the z-file.  The z-file is created
     mode 444.

FILES
     g-file           Existed before the execution of delta;
                      removed after completion of delta.
     p-file           Existed before the execution of delta; may



                         Printed 1/15/91                   Page 7





GET(1-SysV)         RISC/os Reference Manual          GET(1-SysV)



                      exist after completion of delta.
     q-file           Created during the execution of delta;
                      removed after completion of delta.
     x-file           Created during the execution of delta;
                      renamed to SCCS file after completion of
                      delta.
     z-file           Created during the execution of delta;
                      removed during the execution of delta.
     d-file           Created during the execution of delta;
                      removed after completion of delta.
     /usr/bin/bdiff   Program to compute differences between the
                      ``gotten'' file and the g-file.

SEE ALSO
     admin(1), delta(1), prs(1), what(1).
     help(1) in the User's Reference Manual.

DIAGNOSTICS
     Use help(1) for explanations.

ERRORS
     If the effective user has write permission (either expli-
     citly or implicitly) in the directory containing the SCCS
     files, but the real user does not, then only one file may be
     named when the -e keyletter is used.






























 Page 8                  Printed 1/15/91



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026