Users Guide

Adaptive CLI Script Language Syntax | Actions and Adaptive CLI
588 OMNM 6.5.3 User Guide
Adaptive CLI Script Language Syntax
The following is the Adaptive CLI scripting language syntax:
CLI script is a line-based syntax. In other words, each line’s syntax has to be completed.
CLI script supports primarily two features:
Attributes
and
Conditional Blocks
.
Attributes
Each attribute in the script is marked by a delimiter. The following delimiters are supported:
<> [] {} () $ % @ #
Think of Attribute delimiters as a pair of open/close markers surrounding a variable name. For
single character Attribute delimiters, there is no closing marker (the close marker is empty).
Examples of Attributes are:
<var>, [var], {var}, (var), $var, %var, #var, @var
The default mandatory delimiters are
<>
, and the default optional delimiters are
[]
, but you can
change those default settings. That means an Attribute variable like <var> may represent a
mandatory or an optional Attribute depending on what are set as delimiters.
NOTE:
Single delimiter symbols require a space after the attribute. These do allow values immediately before
the symbol. Perl requires a space after the attribute, or the attribute’s closing delimiter, but values
immediately before single delimiters works.
Here is an example of a command line with a mandatory and optional Attribute:
show <mandatory> [optional]
If you set the
<mandatory>
Attribute to
interface
and do not set the
[optional]
one, then the
resulting command would be this:
show interface
If you set the
<mandatory>
Attribute to
interface
and set
[optional]
to
brief
then the resulting
command would be:
show interface brief
Conditional Blocks
Every line in the script is presumably a command to be sent to the device, except for lines that
denote either a beginning or ending of a conditional block.
The begin conditional block marker is tied to a Attribute and has the following syntax:
<optional-open-delimiter> IF optional-attribute <optional-close-
delimiter>
The end conditional block marker has the following syntax:
<optional-open-delimiter> ENDIF optional-text < optional-close-delimiter>
Here is an example of a conditional block, where the Attribute delimiters are
<>
, optional delimiter
is
[]
, and the conditional Attribute variable is
set
:
[IF set]
execute this command
and execute this command