大多数 CLI 参数是“名称-值”对:每个参数都包含一个名称和一个值。只有少数参数只有名称而没有值。这些参数称为标记。
可以在 CLI 会话中的多个位置指定参数值:
CLI 启动 – 启动 CLI 时,可以在命令行中指定参数。启动时指定的参数是会话的全局参数。全局参数值保持不变,除非使用 set 命令将其覆盖,或使用 unset 命令将其从当前会话中删除。
CLI 命令 – 您可以为在会话期间执行的单个 CLI 命令指定参数。指定作为命令一部分的值将在该命令的执行过程中暂时覆盖全局参数值。
输入文件 – 参数定义可以存储在外部文件中,且可以在 CLI 会话期间随时进行调用。全局参数和单个命令参数会覆盖外部文件中定义的参数值。
file=/home/examples/example1
其中参数 name 为 file,参数 value 为/home/examples/example1。等号 (=) 与参数名和参数值之间不能有空格。如果值中包含空格或制表符,则必须以双引号字符(ASCII 字符 0x22)将该值括起:
moduleDesc="Local File Scanning"
参数值可以是由逗号分隔的多个值,值之间不能有空格,如下所示。
severity=DIS,DWN,ERR
参数列表是以空格分隔的参数序列,如下所示。
m=kernel-reader moduleDesc="My Kernel Reader"
ok1="This is just a test" ok2=hello ok3=hello,hi,aloha ok4="hello,hi,aloha"
broken1="How are you?","Who are you?" broken2="Testing",1,2,3 broken3="Hello broken4=Hello"
可将参数存储在文件中,并在需要时进行读取。可以根据需要创建任意数目的参数文件。可以使用内置的 i 参数指定所需参数输入文件的名称。
本节介绍在 CLI 中具有预定义含义的参数。
如果在会话模式下将此标记用作扩展命令的参数,则指示 CLI 在执行当前命令时保持最后一条扩展命令中的参数值不变。如果指定了 -l 标记,则为当前命令指定的任何其它参数都将被忽略。此标记对基本命令没有影响。以下示例说明了 -l 标志的用法:
> getLoadModules a=myHostName ... ... > getAlarms -l |
执行 getAlarms 命令时,该命令使用的 a (myHostName) 参数的值来自上次执行的 getLoadModules 命令。
参数 a 的值表示代理,它被指定为代理主机和(可选)端口号。如果指定了端口号,请使用冒号 (:) 将端口号与主机名分隔。一般语法为:a=agentHost[:agentPort]。例如,要指定在主机 example_host 上运行并监听端口 12345 的代理,应使用以下语法:
a=example_host:12345 |
参数 append 的值是一个文件的名称,命令输出将附加到该文件中。如果此文件不存在,将创建它。如果全局设置 append 参数,则该会话中所有命令的输出都将附加到指定的文件中。也可以为特定命令设置此参数,如下所示。
append=/home/examples/cli_output |
如果同时设置了 append 和 o 参数,则 append 参数的设置将优于 o 参数。只在指定文件中记录命令结果,并不记录实际的命令。可以使用 log 参数记录命令信息。
ncols 参数的值是 print 命令可以显示的命令输出的最大列数。列名称区分大小写。多个列名称之间用逗号分隔。下例使用了几个列名称。
columns="Alarm Id,Node URL,Target Host,Severity" |
f 参数的值用于确定命令输出的格式。当前格式为 plain 和 html。有关更多信息,请参见命令输出格式。要将格式设置为 HTML,可使用以下语法:
f=html |
height 参数的值是屏幕所显示的命令输出的行数。下例将 height 设置为大约相当于标准终端屏幕的高度:
height=24 |
history 参数的值是命令历史记录中所保存的命令的数量。通过使用命令历史记录,用户可以查看以前执行的命令。此参数由 set 命令使用。
history=10 |
i 参数的值是输入文件的名称,该文件中包含的参数定义要包含在当前会话中。输入文件中的每个参数定义应位于不同的行上。例如,假设 /home/examples/myParams 文件中包含以下各行:
more=off serverHost=myserver a=myagent:161 |
通过使用以下行,您可以将这些参数包含在当前的 CLI 会话中:
i=/home/examples/myParams |
log 参数的值是一个文件名称,该文件用于记录所有的 CLI 命令以及执行每条命令所花费的时间。请注意,日志文件只记录命令名称和命令执行的时间。命令输出记录在由参数 a 或参数 o 指定的文件中。设置该参数后,所有后续命令都附加到该文件中。如果此文件不存在,将创建它。由于打开日志记录时不覆盖日志文件,因此在需要创建其他日志时请另外指定一个文件。要关闭记录,请使用带有 log 参数的 unset 命令。下例将启动日志,然后再停止日志。
> log=/home/examples/sunmc-log ... ... > unset log |
logmode 参数的值可以是: detailed、command 或 from n。如果将该参数的值指定为 detailed,命令日志文件中将保存命令的详细信息。如果将该参数的值指定为 command,则命令日志文件中将仅保存命令及相应的参数。如果将该参数的值指定为 from n ,则命令日志文件中将保存命令历史记录中第 n 个条目后的所有条目。logmode 参数的默认值是 detailed。
m 参数的值是 Sun Management Center 模块的名称。该值也可以是由逗号分隔的模块列表。
m=kernel-reader |
more 参数的值控制显示器上命令输出的分页情况。可以使用的值包括 on 和 off。如果将 more 设置为 on,则到终端的所有后续输出一次显示一屏。屏幕大小由 height 和 width 参数定义。在批处理模式下,默认值为 off;在会话模式下,默认值为 on。
more=on |
o 参数的值是向其中写入命令输出的文件的名称。如果此文件已存在,则将其覆盖。通过将 o 参数指定给特定命令,可以使用 o 参数捕获该命令的输出。也可以使用 set 命令全局设置该参数,将所有后续输出写入到某个文件。
如果同时设置了 append 和 o 参数,则 append 参数的设置将优于 o 参数。命令输出将附加到指定的文件。只在该文件中写入命令输出,并不记录实际的命令。可以使用 log 参数记录命令信息。下例定义了将命令输出写入其中的文件。
o=/home/examples/sunmc-output |
serverPort 参数的值是用于登录的服务器端口。建立登录会话后,将无法设置此全局参数。如果未设置此参数,将使用缺省端口 2099。
style 参数的值用于确定命令输出的样式。该参数可使用的值有:table、list 和 <custom>。该参数的值为 table 时,命令输出将以表格方式显示。该参数的值为 list 时,命令输出将以列表方式显示,其中各列之间以逗号分隔。该参数的值为 <custom> 时,命令输出将以用户定义的格式显示。每一列均以 %a 表示。自定义的值可以包含特殊字符如 :、\t 和 \n。
t 参数的值表示在拓扑代理中管理的对象的名称。该对象可以是域、视图组或实体。对象名称是域级别的全限定名称,例如 /domain/group/host。