vc(1) User Commands vc(1)NAMEvc - version control
SYNOPSISvc [-a] [-t] [-c char] [-s] [ keyword=value... keyword=value]
DESCRIPTION
This command is obsolete and will be removed in the next release.
The vc command copies lines from the standard input to the standard
output under control of its arguments and of ``control statements''
encountered in the standard input. In the process of performing the
copy operation, user-declared keywords may be replaced by their string
value when they appear in plain text and/or control statements.
The copying of lines from the standard input to the standard output is
conditional, based on tests (in control statements) of keyword values
specified in control statements or as vc command arguments.
A control statement is a single line beginning with a control charac‐
ter, except as modified by the -t keyletter (see below). The default
control character is colon (:), except as modified by the -c keyletter
(see below). Input lines beginning with a backslash (\) followed by a
control character are not control lines and are copied to the standard
output with the backslash removed. Lines beginning with a backslash
followed by a non-control character are copied in their entirety.
A keyword is composed of 9 or less alphanumerics; the first must be
alphabetic. A value is any ASCII string that can be created with ed; a
numeric value is an unsigned string of digits. Keyword values may not
contain blanks or tabs.
Replacement of keywords by values is done whenever a keyword sur‐
rounded by control characters is encountered on a version control
statement. The -a keyletter (see below) forces replacement of keywords
in all lines of text. An uninterpreted control character may be
included in a value by preceding it with \. If a literal \ is desired,
then it too must be preceded by \.
OPTIONS
The following options are supported:
-a Forces replacement of keywords surrounded by control charac‐
ters with their assigned value in all text lines and not just
in vc statements.
-t All characters from the beginning of a line up to and includ‐
ing the first tab character are ignored for the purpose of
detecting a control statement. If a control statement is
found, all characters up to and including the tab are dis‐
carded.
-cchar Specifies a control character to be used in place of the ``:''
default.
-s Silences warning messages (not error) that are normally
printed on the diagnostic output.
vc recognizes the following version control statements:
:dcl keyword[, ..., keyword] Declare keywords. All keywords must be
declared.
:asg keyword=value Assign values to keywords. An asg
statement overrides the assignment for
the corresponding keyword on the vc
command line and all previous asg
statements for that keyword. Keywords
that are declared but are not assigned
values have null values.
:if condition Skip lines of the standard input. If
... the condition is true, all lines
:end between the if statement and the match‐
ing end statement are copied to the
standard output. If the condition is
false, all intervening lines are dis‐
carded, including control statements.
Note: Intervening if statements and
matching end statements are recognized
solely for the purpose of maintaining
the proper if-end matching.
The syntax of a condition is:
<cond> ::= [ ``not'' ] <or>
<or> ::= <and> | <and>
``|'' <or>
<and> ::= <exp> | <exp>
``&'' <and>
<exp> ::= ``('' <or> ``)'' |
<value> <op> <value>
<op> ::= ``='' | ``!='' |
``<'' | ``>''
<value> ::= <arbitrary ASCII
string> | <numeric
string>
The available operators and their mean‐
ings are:
= equal
!= not equal
& and
| or
> greater than
< less than
() used for logical groupings
not may only occur immediately
after the if, and when
present, inverts the value of
the entire condition
The > and < operate only on unsigned
integer values (for example, : 012 > 12
is false). All other operators take
strings as arguments (for example, :
012 != 12 is true).
The precedence of the operators (from
highest to lowest) is:
= != > < all of equal precedence
&
|
Parentheses may be used to alter the
order of precedence.
Values must be separated from operators
or parentheses by at least one blank or
tab.
::text Replace keywords on lines that are
copied to the standard output. The two
leading control characters are removed,
and keywords surrounded by control
characters in text are replaced by
their value before the line is copied
to the output file. This action is
independent of the -a keyletter.
:on Turn on or off keyword replacement on
:off all lines.
:ctl char Change the control character to char.
:msg message Print message on the diagnostic output.
:err message Print message followed by:
ERROR: err statement on line ...
(915)
on the diagnostic output. vc halts exe‐
cution, and returns an exit code of 1.
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
┌─────────────────────────────┬─────────────────────────────┐
│ ATTRIBUTE TYPE │ ATTRIBUTE VALUE │
├─────────────────────────────┼─────────────────────────────┤
│Availability │SUNWsprot │
└─────────────────────────────┴─────────────────────────────┘
SEE ALSOed(1), attributes(5)SunOS 5.10 5 Jul 1990 vc(1)