ident - identify RCS keyword strings in files

  ident [ -q ] [ -V ] [ file ... ]

ident searches for all instances of the pattern $keyword: text $ in the
named files or, if no files are named, the standard input.

These patterns are normally inserted automatically by the RCS command co(1),
but can also be inserted manually. The option -q suppresses the warning given
if there are no patterns in a file. The option -V prints ident's version
number.

KEYWORDS

$Author$   The login name of the user who checked in the revision.
$Date$     The date and time the revision was checked in.
$Header$   A standard header containing the full pathname of the RCS file,
           the revision number, the date and time, the author, the state,
           and the locker (if locked).
$Id$       Same as $Header$, except that the RCS filename is without a path.
$Locker$   The login name of the user who locked the  revision (empty if not
           locked).
$Log$      The log message supplied during checkin. For ident's purposes,
           this is equivalent to $RCSfile$.
$Name$     The symbolic name used to check out the revision, if any.
$RCSfile$  The name of the RCS file without a path.
$Revision$ The revision number assigned to the revision.
$Source$   The full pathname of the RCS file.
$State$    The state assigned to the revision with the -s option of rcs(1)
           or ci(1).

co(1) represents the following characters in keyword values by escape
sequences to keep keyword strings well-formed.

  char     escape sequence
  tab      \t
  newline  \n
  space    \040
  $        \044
  \        \\

Compiled code usage example

#f.c
  #include 
  static char const rcsid[] = "$Id: f.c,v 1.1 1996/08/12 04:07:48  millert  Exp $";
  int main() { return printf("%s\n", rcsid) == EOF; }

f.c is compiled into f.o, then the command:

  ident f.c f.o

will output:

  f.c:
    $Id: f.c,v 1.1 1996/08/12 04:07:48 millert Exp $
  f.o:
    $Id: f.c,v 1.1 1996/08/12 04:07:48 millert Exp $

If a C program defines a string like rcsid above but does not use it,
lint(1) may complain, and some C compilers will optimize away the string.
The most reliable solution is to have the program use the rcsid string, as
shown in the example above.


# @(#) dyndns.pl - Update Your Dynamic DNS address.
# @(#) $Id: dyndns.pl,v 1.19 2002/01/20 00:24:30 jaalto Exp $
#   Funny identifiers at the top of file
#
#       The GNU RCS ident(1) program can print usefull information out
#       of all variables that are in format $ IDENTIFIER: text $
#       See also Unix man pages for command what(1) which outputs all lines
#       matching @( # ). Try commands:
#
#       % what  PRGNAME
#       % ident PRGNAME