Man Linux: Main Page and Category List

NAME

       get - get a version of an SCCS file (DEVELOPMENT)

SYNOPSIS

       get [-begkmnlLpst][-c cutoff][-i list][-r SID][-x list] file...

DESCRIPTION

       The  get  utility  shall generate a text file from each named SCCS file
       according to the specifications given by its options.

       The generated text shall normally be written into a file called the  g-
       file  whose  name  is derived from the SCCS filename by simply removing
       the leading "s." .

OPTIONS

       The get utility  shall  conform  to  the  Base  Definitions  volume  of
       IEEE Std 1003.1-2001, Section 12.2, Utility Syntax Guidelines.

       The following options shall be supported:

       -r  SID
              Indicate  the  SCCS  Identification  String (SID) of the version
              (delta) of an SCCS file to be retrieved. The  table  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  if  the -e option is also used), as a function of the SID
              specified.

       -c  cutoff
              Indicate the cutoff date-time, in the form:

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

       For the YY component, values in the range [69,99] shall refer to  years
       1969  to 1999 inclusive, and values in the range [00,68] shall refer to
       years 2000 to 2068 inclusive.

       Note:
              It is expected that in a future version of  IEEE Std 1003.1-2001
              the  default  century  inferred from a 2-digit year will change.
              (This would apply to all commands accepting a  2-digit  year  as
              input.)

       No  changes  (deltas)  to  the  SCCS  file  that were created after the
       specified cutoff date-time shall be  included  in  the  generated  text
       file.  Units  omitted  from  the  date-time  default  to  their maximum
       possible values; for example, -c 7502 is equivalent to -c 750228235959.

       Any  number  of non-numeric characters may separate the various 2-digit
       pieces of the cutoff date-time. This feature allows the user to specify
       a cutoff date in the form: -c "77/2/2 9:22:25".

       -e     Indicate  that the get is for the purpose of editing or making a
              change (delta) to the SCCS file via a subsequent use  of  delta.
              The  -e  option  used in a get for a particular version (SID) of
              the SCCS file shall prevent further get commands from editing on
              the  same SID until delta is executed or the j (joint edit) flag
              is set in the SCCS file. Concurrent use of get -e for  different
              SIDs is always allowed.

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

       SCCS  file  protection specified via the ceiling, floor, and authorized
       user list stored in the SCCS file shall be enforced when the -e  option
       is used.

       -b     Use  with  the  -e  option to indicate that the new delta should
              have an SID in a new branch as shown in the table  below.   This
              option shall be ignored if the b flag is not present in the file
              or if the retrieved delta is not a leaf delta. (A leaf delta  is
              one that has no successors on the SCCS file tree.)

       Note:
              A branch delta may always be created from a non-leaf delta.

       -i  list
              Indicate  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 the table  in  the  EXTENDED  DESCRIPTION
       section,  except  that  the  result  of  supplying  a  partial  SID  is
       unspecified. A diagnostic message shall be written if the first SID  in
       the range is not an ancestor of the second SID in the range.

       -x  list
              Indicate  a  list  of  deltas  to  be excluded (forced not to be
              applied) in the creation of  the  generated  file.  See  the  -i
              option for the list format.

       -k     Suppress  replacement  of identification keywords (see below) in
              the retrieved text by  their  value.  The  -k  option  shall  be
              implied by the -e option.

       -l     Write a delta summary into an l-file.

       -L     Write a delta summary to standard output. All informative output
              that normally is written to standard output shall be written  to
              standard  error  instead, unless the -s option is used, in which
              case it shall be suppressed.

       -p     Write the text retrieved from the  SCCS  file  to  the  standard
              output.  No g-file shall be created. All informative output that
              normally goes to the standard output shall go to standard  error
              instead,  unless  the  -s option is used, in which case it shall
              disappear.

       -s     Suppress all informative output  normally  written  to  standard
              output.   However,  fatal  error messages (which shall always be
              written to the standard error) shall remain unaffected.

       -m     Precede each text line retrieved from the SCCS file by  the  SID
              of  the  delta that inserted the text line in the SCCS file. The
              format shall be:

              "%s\t%s", <SID>, <text line>

       -n     Precede each generated text line  with  the  %M%  identification
              keyword value (see below). The format shall be:

              "%s\t%s", <%M% value>, <text line>

       When  both  the  -m  and  -n options are used, the <text line> shall be
       replaced by the -m option-generated format.

       -g     Suppress 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 particular SID.

       -t     Use to access the most recently created (top) delta in  a  given
              release  (for example, -r 1), or release and level (for example,
              -r 1.2).

OPERANDS

       The following operands shall be supported:

       file   A pathname of an existing SCCS file or a directory. If file is a
              directory,  the  get utility shall behave 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 shall be silently ignored.

       If exactly one file operand appears, and it is ’-’ , the standard input
       shall  be 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
       shall be silently ignored.

STDIN

       The  standard  input shall be a text file used only if the file operand
       is specified as ’-’ . Each line of the text file shall  be  interpreted
       as an SCCS pathname.

INPUT FILES

       The SCCS files shall be files of an unspecified format.

ENVIRONMENT VARIABLES

       The following environment variables shall affect the execution of get:

       LANG   Provide  a  default value for the internationalization variables
              that are unset or null. (See  the  Base  Definitions  volume  of
              IEEE Std 1003.1-2001,    Section    8.2,    Internationalization
              Variables for the precedence of  internationalization  variables
              used to determine the values of locale categories.)

       LC_ALL If  set  to a non-empty string value, override the values of all
              the other internationalization variables.

       LC_CTYPE
              Determine the locale for  the  interpretation  of  sequences  of
              bytes  of  text  data as characters (for example, single-byte 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,
              and informative messages written to standard output (or standard
              error, if the -p option is used).

       NLSPATH
              Determine the location of message catalogs for the processing of
              LC_MESSAGES .

       TZ     Determine  the  timezone in which the times and dates written in
              the SCCS file are evaluated. If the  TZ  variable  is  unset  or
              NULL, an unspecified system default timezone is used.

ASYNCHRONOUS EVENTS

       Default.

STDOUT

       For  each  file  processed,  get shall write to standard output the SID
       being accessed and the number of lines retrieved from the SCCS file, in
       the following format:

              "%s\n%d lines\n", <SID>, <number of lines>

       If  the -e option is used, the SID of the delta to be made shall appear
       after the SID accessed and before the number of lines generated, in the
       POSIX locale:

              "%s\nnew delta %s\n%d lines\n", <SID accessed>,
                  <SID to be made>, <number of lines>

       If  there  is  more  than  one named file or if a directory or standard
       input is named, each pathname shall be written before each of the lines
       shown in one of the preceding formats:

              "\n%s:\n", <pathname>

       If  the  -L  option is used, a delta summary shall be written following
       the format specified below for l-files.

       If the -i option is used, included deltas shall be listed following the
       notation, in the POSIX locale:

              "Included:\n"

       If the -x option is used, excluded deltas shall be listed following the
       notation, in the POSIX locale:

              "Excluded:\n"

       If the -p or -L  options  are  specified,  the  standard  output  shall
       consist of the text retrieved from the SCCS file.

STDERR

       The  standard  error shall be used only for diagnostic messages, except
       if the -p or -L options are specified, it shall include all informative
       messages normally sent to standard output.

OUTPUT FILES

       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 filename shall be
       formed from the SCCS filename: the application shall  ensure  that  the
       last  component  of  all SCCS filenames is of the form s.  module-name;
       the auxiliary files shall be named by replacing the leading s with  the
       tag.  The  g-file  shall  be an exception to this scheme: the g-file is
       named by  removing  the  s.  prefix.  For  example,  for  s.xyz.c,  the
       auxiliary  filenames  would  be  xyz.c,  l.xyz.c, p.xyz.c, and z.xyz.c,
       respectively.

       The g-file, which contains the generated text, shall be created in  the
       current  directory  (unless  the  -p option is used). A g-file shall be
       created in all cases, whether or not any lines of text  were  generated
       by  the  get.  It  shall be owned by the real user. If the -k option is
       used or implied, the g-file shall be writable by the owner only  (read-
       only  for  everyone  else);  otherwise, it shall be read-only. Only the
       real user need have write permission in the current directory.

       The l-file shall contain a table showing which deltas were  applied  in
       generating  the  retrieved  text.  The  l-file  shall be created in the
       current directory if the -l option is used; it shall be  read-only  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 shall have the following format:

              "%c%c%c %s\t%s %s\n", <code1>, <code2>, <code3>,
                  <SID>, <date-time>, <login>

       where the entries are:

       <code1>
              A <space> if the delta was applied; ’*’ otherwise.

       <code2>
              A <space> if the delta  was  applied  or  was  not  applied  and
              ignored; ’*’ if the delta was not applied and was not ignored.

       <code3>
              A character indicating a special reason why the delta was or was
              not applied:

       I
              Included.

       X
              Excluded.

       C
              Cut off (by a -c option).

       <date-time>
              Date and time (using the format of the date utility’s %y / %m  /
              %d %T conversion specification format) of creation.

       <login>
              Login name of person who created delta.

       The comments and MR data shall follow on subsequent lines, indented one
       <tab>. A blank line shall terminate each entry.

       The p-file shall be used to pass information resulting from a get  with
       a  -e option along to delta. Its contents shall also be used to prevent
       a subsequent execution of get with a -e option for the same  SID  until
       delta  is  executed or the joint edit flag, j, is set in the SCCS file.
       The p-file shall be created in the directory containing the  SCCS  file
       and  the  application  shall  ensure  that the effective user has write
       permission in that directory. It shall be writable by owner  only,  and
       owned  by  the  effective  user. Each line in the p-file shall have the
       following format:

              "%s %s %s %s%s%s\n", <g-file SID>,
                  <SID of new delta>, <login-name of real user>,
                  <date-time>, <i-value>, <x-value>

       where <i-value> uses the format "" if no -i option was  specified,  and
       shall use the format:

              " -i%s", <-i option option-argument>

       if  a -i option was specified and <x-value> uses the format "" if no -x
       option was specified, and shall use the format:

              " -x%s", <-x option option-argument>

       if a -x option was specified. There can be an arbitrary number of lines
       in  the  p-file at any time; no two lines shall have the same new delta
       SID.

       The z-file shall serve as a  lock-out  mechanism  against  simultaneous
       updates.  Its  contents  shall  be the binary process ID of the command
       (that is, get) that created it. The z-file  shall  be  created  in  the
       directory  containing  the  SCCS file for the duration of get. The same
       protection restrictions as those for the p-file shall apply for the  z-
       file.  The z-file shall be created read-only.

EXTENDED DESCRIPTION

                     Determination of SCCS Identification String
        SID*      -b Keyletter Other                 SID       SID of Delta
        Specified Used&        Conditions            Retrieved to be Created
        none&&    no           R defaults to mR      mR.mL     mR.(mL+1)
        none&&    yes          R defaults to mR      mR.mL     mR.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 R does not hR.mL**   hR.mL.(mB+1).1
                               exist
        R         -            Trunk successor in    R.mL      R.mL.(mB+1).1
                               release > R and R
                               exists
        R.L       no           No trunk successor    R.L       R.(L+1)
        R.L       yes          No trunk successor    R.L       R.L.(mB+1).1
        R.L       -            Trunk successor in    R.L       R.L.(mB+1).1
                               release >= R
        R.L.B     no           No branch successor   R.L.B.mS  R.L.B.(mS+1)
        R.L.B     yes          No branch successor   R.L.B.mS  R.L.(mB+1).1
        R.L.B.S   no           No branch successor   R.L.B.S   R.L.B.(S+1)
        R.L.B.S   yes          No branch successor   R.L.B.S   R.L.(mB+1).1
        R.L.B.S   -            Branch successor      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  (that  is,  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 components shall
              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.

       &      The -b option is effective only if the b flag 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  interpreted  as if it had been
              specified on the command line. Thus, one of the other  cases  in
              this table applies.

   System Date and Time
       When  a  g-file  is  generated, the creation time of deltas in the SCCS
       file may be taken into account. If any of these times are apparently in
       the future, the behavior is unspecified.

   Identification Keywords
       Identifying  information shall be 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:

       %M%    Module name: either the value of the m flag in the file,  or  if
              absent, the name of the SCCS file with the leading s. removed.

       %I%    SCCS  identification  (SID)  (%R%.%L% or %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).

       %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.

       %F%    SCCS filename.

       %P%    SCCS absolute pathname.

       %Q%    The value of the q flag in the file.

       %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 provide sequence numbers.

       %Z%    The four-character string "@(#)" recognizable by what.

       %W%    A shorthand notation for constructing what strings:

              %W%=%Z%%M%<tab>%I%

       %A%    Another shorthand notation for constructing what strings:

              %A%=%Z%%Y%%M%%I%%Z%

EXIT STATUS

       The following exit values shall be returned:

        0     Successful completion.

       >0     An error occurred.

CONSEQUENCES OF ERRORS

       Default.

       The following sections are informative.

APPLICATION USAGE

       Problems  can arise if the system date and time have been modified (for
       example, put forward and then  back  again,  or  unsynchronized  clocks
       across  a  network)  and can also arise when different values of the TZ
       environment variable are used.

       Problems of a similar nature can also arise for the  operation  of  the
       delta  utility,  which  compares  the  previous  file  body against the
       working file as part of its normal operation.

EXAMPLES

       None.

RATIONALE

       None.

FUTURE DIRECTIONS

       The -lp option may be withdrawn in a future version.

SEE ALSO

       admin , delta , prs , what

COPYRIGHT

       Portions of this text are reprinted and reproduced in  electronic  form
       from IEEE Std 1003.1, 2003 Edition, Standard for Information Technology
       -- Portable Operating System Interface (POSIX),  The  Open  Group  Base
       Specifications  Issue  6,  Copyright  (C) 2001-2003 by the Institute of
       Electrical and Electronics Engineers, Inc and The Open  Group.  In  the
       event of any discrepancy between this version and the original IEEE and
       The Open Group Standard, the original IEEE and The Open Group  Standard
       is  the  referee document. The original Standard can be obtained online
       at http://www.opengroup.org/unix/online.html .