Sun Management Center 3.5 用户指南

第 20 章 使用命令行界面

Sun Management Center 命令行界面 (CLI) 是轻量级、字符驱动的控制台,可替代 Java 和 Web 控制台图形界面,用于监视和管理您的系统。

本章包含以下主题:

Sun Management Center CLI 概述

Sun Management Center 命令行界面 (CLI) 是字符驱动的控制台应用程序,用于监视和管理您的系统。CLI 提供了几个有用的功能:

使用 CLI 可以执行以下任务:

系统需求

可以使用以下任一系统配置,从用户终端会话访问 CLI:

CLI 交互模式

CLI 支持以下两种交互模式:

CLI 命令和参数概述

本节概述了 CLI 命令和参数。

CLI 命令概述

CLI 命令可分为两种类型: 基本命令和扩展命令。

在会话模式下,命令在前台或后台均可执行。

CLI 也支持别名。可以为更复杂的命令及其参数定义缩写或别名。可以在不同的 CLI 会话中使用用户定义的别名。

CLI 参数概述

CLI 参数是“名称-值”对:每个参数都包含一个名称和一个。某些参数内置于 CLI 中。 其名称和值的含义在 CLI 中进行了预定义。可以定义其它参数,这些参数也称为变量.。某些参数是全局范围参数。全局参数影响特定会话中运行的所有 CLI 命令的执行情况。其它参数则特定于某条命令或命令组。

输入和输出功能

CLI 提供了几个输入和输出功能。

CLI 命令帮助

CLI 为每条 CLI 命令都提供了联机帮助。可以在 CLI 中使用 CLI 帮助。CLI 帮助不要求具备 GUI。 帮助提供了了每条命令的用法说明,还列出了与该命令相关的参数。

CLI 参数

大多数 CLI 参数是“名称-值”对:每个参数都包含一个名称和一个。只有少数参数只有名称而没有值。这些参数称为标记

参数范围

可以在 CLI 会话中的多个位置指定参数值:

参数语法

参数被指定为名称=对:

file=/home/examples/example1

其中参数名称file,参数 /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 中具有预定义含义的参数,


注意:

其中部分预定义参数的名称为单个字母。例如 af o。这些都是正确的参数名,并没有错误。


- b

如果启动 CLI 时在 UNIX 命令行中包含此标记,则指示 CLI 在批处理模式下运行。在会话模式下将忽略此标记。

- h

如果在会话模式下使用此标记作为命令的参数,则指示 CLI 显示命令的帮助文本。

- l

此标记的名称为小写字母 l(ASCII 字符 0x6c),而不是数字 1(ASCII 字符 0x31)。 如果在会话模式下将此标记用作扩展命令的参数,则指示 CLI 在执行当前命令时保持最后一条扩展命令中的参数值不变。如果指定了 -l 标记,则为当前命令指定的任何其它参数都将被忽略。此标记对基本命令没有影响。以下示例说明了 -l 标记的用法:


> getLoadModules a=myHostName
...
...
> getAlarms -l

getAlarms 命令在执行时将使用此前执行的 getLoadModules 命令中的参数 a (myHostName ) 的值。

a

参数 a 的值表示代理,它被指定为代理主机和(可选)端口号。如果指定了端口号,请使用冒号 (:)。 一般语法为 a=agentHost[:agentPort]。例如,要指定在主机 example_host 上运行并监听端口 12345 的代理,应使用以下语法:


a=example_host:12345

参数 a 的值也可以是用逗号分隔的代理名称列表:a=agent[, agent]+.

append

参数 append 的值是一个文件的名称,命令输出将附加到其中。如果此文件不存在,将创建它。如果全局设置 append 参数,则该会话中所有命令的输出都将附加到指定的文件中。也可以为特定命令设置此参数,如下所示。


append=/home/examples/cli_output

如果同时设置了 append 参数和 o 参数,则 append 将优先于 o。只在指定文件中记录命令结果,并不记录实际的命令。可以使用 log 参数记录命令信息。

columns

参数 columns 的值是由 print 命令显示的一列或多列命令输出的名称。列名称区分大小写。多个列名称之间用逗号分隔。下例使用了几个列名称。


columns="Alarm Id,Node URL,Target Host,Severity"
f

f 参数的值确定命令输出的格式。当前格式为 plainhtml。详细信息,请参见命令输出格式。要将格式设置为 HTML,可使用以下语法:


f=html
height

height 参数的值是在屏幕上显示的命令输出的行数。下例将 height 设置为大约相当于标准终端屏幕的高度:


height=24
i

i 参数的值是输入文件的名称,该文件中包含的参数定义要包含在当前会话中。输入文件中的每个参数定义应位于不同的行上。例如,假设 /home/examples/myParams 文件中包含以下各行:


more=off
serverHost=myserver
a=myagent:161

可在下面的行中将这些参数包含到当前的 CLI 会话中:


i=/home/examples/myParams
log

log 参数的值是一个文件的名称,此文件记录了所有 CLI 命令和执行命令的时间。注意,日志文件只记录命令名称和命令执行的时间。命令输出记录在由参数 a 或参数 o 指定的文件中。设置该参数后,所有后续命令都附加到该文件中。如果此文件不存在,将创建它。由于打开日志记录时不覆盖日志文件,因此在需要创建其它日志时要确保另外指定一个文件。要关闭日志记录,可对 log 参数使用 unset 命令。下例将启动日志,然后再停止日志。


> log=/home/examples/sunmc-log
...
...
> unset log
m

m 参数的值是 Sun Management Center 模块的名称。该值也可以是由逗号分隔的模块列表。


m=kernel-reader
more

more 参数的值控制屏幕上显示的命令输出的分页。可以使用的值包括 onoff。如果将 more 设置为 on,则到终端的所有后续输出一次显示一。屏幕大小由 height 和 width 参数定义。在批处理模式下,缺省值为 off;在会话模式下,缺省值为 on


more=on
o

o 参数的值是向其中写入命令输出的文件的名称。如果此文件已存在,则将其覆盖。通过将 o 参数指定给特定命令,可以使用 o 参数捕获该命令的输出。也可以使用 set 命令全局设置该参数,将所有后续输出写入到某个文件。

如果同时设置了 append 参数和 o 参数,则 append 将优先于 o。命令输出将附加到指定的文件。只在该文件中写入命令输出,并不记录实际的命令。可以使用 log 参数记录命令信息。下例定义了将命令输出写入其中的文件。


o=/home/examples/sunmc-output
serverHost

serverHost 参数的值确定登录时 CLI 连接的服务器主机。CLI 连接到服务器后,将无法更改此全局参数。

serverPort

serverPort 参数的值表示登录的服务器端口。建立登录会话后,将无法设置此全局参数。如果未设置此参数,将使用缺省端口 2099

t

t 参数的值表示在拓扑代理中管理的对象的名称。该对象可以是域、视图组或实体。对象名称是以域名开头的全限定名称,例如 /domain/group/host

CLI 命令

有关命令类型和概念的概述,请参见CLI 命令和参数概述

基本 CLI 命令

下表说明了基本 CLI 命令。

alias

使用 alias 命令可以为常用命令或包含复杂参数的命令创建别名。别名不能与现有 CLI 命令的名称相同。别名定义中的空格必须用双引号(",ASCII 字符 0x22)括起。 下例首先显示了一条简单的 alias 命令,而后是一条较复杂的 alias 命令。


> alias assign=set
> alias alarms="getAlarms severity=dwn"

如果调用的 alias 命令中不包含参数,此命令将打印已定义的别名及其值的列表。下例显示了调用时不包含参数的 alias 命令的结果。


> alias
assign - set
alarms - getAlarms severity=dwn
clear

clear 命令可以删除当前会话中的所有参数。此命令与 unset 命令作用相似,但是不要求参数名是变量。

exit

exit 命令可以断开与服务器的连接,并终止 CLI 会话。


注意:

exit 命令与 quit 命令完全相同。


help

help 命令显示有关 CLI 命令及其参数的信息。帮助信息适于在非位图终端屏幕上显示。执行 help 命令而不包含参数时,该命令将按字母顺序显示可用 CLI 命令的列表及其简要说明。首先列出基本命令,然后是扩展命令。调用 help 命令并将 CLI 命令的名称作为参数时,help 将打印特定于该命令的信息。下例显示了 getAlarms 命令的帮助。


> help getAlarms
getAlarms [a=host[,host]+] [alarm_filter_list]
 - Get alarm information on an agent or a list of agents under a
set of filter conditions. If no agent is provided, all alarms will
be obtained. All the filter conditions are "ANDED" to provide the
result. The filter conditions as specified in alarm_filter_list
comprises:
  domain=domain and/or
  m=module[+instance] and/or
  managed_object=managed_object and/or
  property=property and/or
  property_instance=property_instance and/or
  qualifier=qualifier and/or
  severity=[DIS,DWN,ERR,OFF,INF,IRR,WRN] and/or
  state=[C,F,O] and/or
  ack=[A,N]
kill

kill 命令将终止所有后台运行的命令。

login

login 命令将建立到 Sun Management Center 服务器的连接。可以将 serverHostserverPort(可选)参数指定为变量。如果未指定主机,系统会提示用户指定一台主机。login 命令还会提示您输入用户名和口令。

logout

logout 命令用于终止到 Sun Management Center 服务器的连接,但不终止 CLI 会话。

more

more 命令用于显示为控制屏幕命令输出的格式而设置的参数的帮助信息。详细信息,请参见预定义的参数和标记中有关预定义参数 heightmore 的说明。

print

print 命令将上一个扩展命令的输出以指定的格式定向到指定的目标。缺省情况下,print 命令将此输出以纯文本格式定向到终端屏幕。如果设置了参数 a 或参数 o,则输出将被定向到由这两个参数指定的文件,而不会显示在屏幕上。


注意:

print 命令不保存到命令历史记录中。


quit

quit 命令用于断开与服务器的连接,并终止 CLI 会话。


注意:

exit 命令和 quit 命令完全相同。


reset

reset 命令用于将命令行中指定的所有参数的值恢复为 CLI 会话开始时指定的值。会话过程中(而非命令行中)定义的参数将保持不变。如果提供了特定的参数名称作为 reset 的变量且已在命令行上指定了该参数,则该参数的值将恢复为初始值。否则,该参数的值将保持不变。


注意:

reset 命令不保存到命令历史记录中。


set

set 命令允许您指定参数值或显示参数值。参数值由 set 命令指定的参数在当前会话中是全局参数。在该会话期间,全局命令适用于所有命令。如果执行的 set 命令中不包含变量,则显示当前会话期间定义的所有参数的值。如果执行的 set 命令中包含一个指定为变量的参数,则显示该参数的值。下例显示了此命令的所有三种情况。


> set height=10
> set
height=10
> set height
height=10
status

status 命令用于显示后台运行的所有命令的状态。

unalias

unalias 命令用于删除指定为变量的别名。

unset

unset 命令用于从当前会话中删除指定的参数。


注意:

unset 命令不保存到命令历史记录中。


扩展 CLI 命令

以下各节讲述了 CLI 中可用的几种扩展命令类型:

模块扩展命令

有七个用于管理模块的扩展命令。有关 amfcolumns 参数的详细信息,请参见预定义的参数和标记

模块命令

disableModule

禁用代理中的模块。disableModule 命令使用以下参数: am

enableModule

启用代理中的模块。enableModule 命令使用以下参数: afmcolumns

getLoadedModules

获取代理中已加载模块的列表。getLoadedModules 命令使用以下参数: afcolumns

getModule

获取特定模块的信息。getModule 命令使用以下参数: afmcolumns

getModules

获取代理中的模块列表。getModules 命令使用以下参数: afcolumns

loadModule

加载代理中的模块。loadModule 命令使用以下参数: afmcolumns

loadModule 命令还可以使用两个附加的参数: moduleName(国际化模块名称)和 moduleDesc(模块的文字说明)。

unloadModule

卸载代理中的一个或多个模块。unloadModule 命令使用以下参数: afmcolumns

模块命令示例

要确定在 agentHost 名称为 seattle 的主机上加载的模块,可以在 CLI 提示下键入以下命令:


> getLoadedModules a=seattle

要在主机 seattle 的端口 1776 上加载 kernel-reader 模块,可以键入以下命令:


> loadModule a=seattle:1776 m=kernel-reader

对象属性扩展命令

有四个用于管理对象属性和属性值的扩展命令。

对象属性命令的参数

对象属性命令可以使用以下参数。有关 amfcolumns 参数的详细信息,请参见预定义的参数和标记

mgtObj

mgtObj 参数的值是设置或检索其属性和特性的被管理对象的名称。

property

property 参数的值是已设置或检索了其属性和值的特性的名称。

propInst

propInst 参数的值是设置或检索其属性和值的特性实例的名称。

rowValues

rowValues 参数的值是由逗号分隔的名称-值对列表。name 是行中列的名称。value 是该列中的值。

attributes

attributes 参数的值是由逗号分隔的属性名称的列表,这些属性名称属于已设置或检索了其属性和值的特性。在与 setAttributes 命令一起使用时,attributes 参数中的每个属性名称都必须在 values 参数中有一个相应的值。

values

values 参数的值是由逗号分隔的值的列表,这些值与在 attributes 参数中指定的属性相对应。在与 setAttributes 命令一起使用时,每个指定的属性必须有一个值。

对象属性命令

可以使用以下命令设置和检索对象属性和属性值:

addRow

addRow 命令用于向表中添加一行。addRow 命令使用以下参数: ammgtObjpropertypropInstrowValues

delRow

delRow 命令用于从表中删除行。delRow 命令使用以下参数: ammgtObjpropertypropInstrowValues

getAttributes

getAttributes 命令从代理或代理列表中检索指定的属性。getAttributes 命令使用以下参数: afmcolumnsmgtObjpropertypropInstattributes

setAttributes

setAttributes 命令为代理或代理列表中的指定属性指定值。setAttributes 命令使用以下参数: ammgtObjpropertypropInstattributesvalues

对于在 attributes 参数中指定的每个属性,values 参数中必须有一个相应的值。

对象属性命令的示例

以下命令检索主机 haiku 端口 1161 处 agent-stats 模块中的被管理对象 totalstatssize 特性的所有属性:


> getAttributes a=haiku:1161 m=agent-stats mgtObj=totalstats \
property=size

以下命令将属性 alarmlimits.error-gt 设置为上例指定的 size 特性中的值 2


> setAttributes a=haiku:1161 m=agent-stats mgtObj=totalstats \
property=size attributes=alarmlimits.error-gt values=2

以下命令从 mgtObj 中指定的被管理对象中删除 rowValues 中指定的行:


> delRow a=haiku:1161 \
m=filemon mgtObj=filemonstats/filemonTable/filemonEntry \
rowValues="name=test,desc=this,filename=/etc/passwd"

警报扩展命令

有五个用于管理警报的扩展命令。

警报命令参数

警报扩展命令可以使用以下参数。有关 a 参数和 m 参数的详细信息,请参见预定义的参数和标记

ack

ack 参数的值是由逗号分隔的值的列表,指示所管理的警报是否已经过确认。ack 参数的合法值包括 A (已确认)和 N (未确认)。

command

command 参数的值是要执行的警报操作。

domain

domain 参数的值是要管理其警报的 Sun Management Center 域的名称。如果未指定任何域,将使用缺省域。

managed_object

managed_object 参数的值是要管理其警报的被管理对象的名称。

note

note 参数的值是正在运行的命令的文字注释。

property

property 参数的值是要管理其警报的特性的名称。

property_instance

property_instance 参数的值是要管理其警报的特定特性实例的名称。

qualifier

qualifier 参数的值是与要管理其警报的被管理特性关联的限定词的名称。

severity

severity 参数的值是所管理的警报的严重程度值的列表,此列表中的值由逗号分隔。severity 参数可以使用以下值:

  • ERR — 错误

  • WRN — 警告

  • INF — 信息

  • IRR — 不合理

  • DWN — 关闭

  • DIS — 禁用

  • OFF — 关闭

state

state 参数的值是所管理的警报的状态值列表,其中的状态值由逗号分隔。state 参数的合法值为 O(打开)或 C (关闭)。

警报命令

可以使用以下命令检查警报值和设置警报操作:

ackAlarms

ackAlarms 命令用于确认代理或代理列表中的警报。ackAlarms 命令使用以下参数: aackcolumns domainfm managed_objectnotepropertyproperty_instancequalifierseveritystate

如果没有为 state 参数指定值,则 state 参数缺省设置为 O(打开)。

delAlarms

delAlarms 命令用于删除代理或代理列表中的警报。delAlarms 命令使用以下参数: aackcolumns domainfm managed_objectnotepropertyproperty_instancequalifierseveritystate

如果没有为 state 参数指定值,则 state 参数缺省设置为 C(关闭)。

getAlarms

getAlarms 命令用于检索代理或代理组的警报信息。getAlarms 命令使用以下参数: aackcolumnsdomainfmmanaged_objectpropertyproperty_instancequalifierseveritystate

如果未指定任何参数,则 getAlarms 命令将返回所有警报信息。

runAlarmAction

runAlarmAction 命令用于在代理或代理列表中运行手动或延迟的警报操作。runAlarmAction 命令使用以下参数: adomain

setAlarmAction

setAlarmAction 命令用于在代理或代理列表中为现有的警报设置手动或延迟的警报操作。setAlarmAction 命令使用以下参数:acommanddomain

警报命令示例

以下命令用于从主机 haiku 中检索严重程度为 ERRDWN 的所有警报:


> getAlarms a=haiku severity=ERR,DWN

拓扑扩展命令

有九个用于管理拓扑的扩展命令。

拓扑命令参数

拓扑扩展命令可以使用以下参数。有关 acolumnsft 参数的详细信息,请参见预定义的参数和标记

agentPort

agentPort 参数的值是代理端口号。如果未指定 agentPort 参数,将使用缺省值 161。agentPort 参数是可选的。仅当未指定 url 参数且不需要缺省端口时才指定此参数。

arch

arch 参数的值是拓扑对象的体系结构。

domain

domain 参数的值是 Sun Management Center 域的名称,必须为 setCurrentDomain 命令指定此名称。

family

family 参数的值是拓扑对象的对象族。

fullDesc

fullDesc 参数的值是所创建的实体或组的文字说明。

isPolled

isPolled 参数的值可以是 truefalse。如果是 true,则实体根据巡回检测类型 (pollType) 巡回检测状态信息。

pollType

pollType 参数的值表示此实体的巡回检测类型。pollType 参数可以使用以下值:

  • ahost – 识别安装和运行激活代理的主机

  • amod – 识别包含激活代理的模块

  • aprox – 识别运行 SNMP 代理服务器模块的代理

  • dummy – 识别未被监视的设备

  • ping – 使用 ICMP ping 命令识别要监视的主机

  • snmp — 使用 SNMP ping 命令识别要监视的主机

readInfo

readInfo 参数的值表示 SNMP 巡回检测对象的 SNMPv1 读团体名。

targetHost

targetHost 参数的值表示目标主机的名称。

targetIp

targetIP 参数的值是目标主机的 IP 地址。

topoCfg

topoCfg 参数的值是被管理的实体的拓扑表示方式的配置信息。

topoType

topoType 参数的值是被管理的实体的拓扑表示类型。

url

url 参数的值是要巡回检测的实体的 URL。可以使用以下格式指定 url 参数的值:

ping://hostname
snmp://hostname:port/oid/#.#.#.#
snmp://hostname:port/[mod,sym]/path
writeInfo

writeInfo 参数的值表示 SNMP 巡回检测对象的 SNMPv1 写团体名。

拓扑命令

有九个用于管理拓扑的扩展命令。

createEntity

createEntity 命令用于创建被管理的实体。可以使用以下参数指定被管理实体的特性: agentPortarchfamilyfullDescisPolledpollTypereadInfotargetHosttargetIPtopoCfgtopoTypeurlcolumnsft

如果指定了 urlagentPort 参数,则不使用缺省端口 161

createGroup

createGroup 命令用于创建拓扑域或组。如果要创建的实体是组,则可以使用以下参数指定组特性: familyfullDesccreateGroup 命令还使用以下参数: columnsft

如果要创建的实体是域,则忽略 familyfullDesc 参数。

delTopoObjects

delTopoObjects 命令用于删除被管理拓扑分层结构中的被管理拓扑对象。同时还删除指定拓扑对象下的所有对象。delTopoObjects 命令使用以下参数: columnsft

getAgentPort

getAgentPort 命令用于返回在拓扑域中的指定主机上运行的 Sun Management Center 代理的端口号。如果存在多个代理,则返回端口号列表。getAgentPort 命令使用以下参数: columnsft

如果未指定 t,则使用缺省域。

getAllTopoObjects

getAllTopoObjects 命令返回被管理的拓扑分层结构中所有被管理对象的列表,这些对象满足 archfamilypollType 参数指定的条件。getAllTopoObjects 命令也使用以下参数: columnsft

getCurrentDomain

getCurrentDomain 命令返回当前域的名称。

getDomains

getDomains 命令返回所有被管理域的列表。

getTopoObject

getTopoObject 命令返回直接位于参数 t 指定的拓扑对象下的被管理拓扑对象的列表,这些对象满足由 archfamilypollType 参数指定的条件。getTopoObject 命令还使用以下参数: columnsf

setCurrentDomain

setCurrentDomain 命令用于将主域设置为 domain 参数中指定的值。

有关从 CLI 导出和导入拓扑信息的信息,请参见导入和导出 CLI 界面

拓扑命令示例

以下命令用于返回所有 Sun Management Center 代理主机的列表,这些代理主机位于运行 SunOS 5.7 软件的 menlo_park 域的 building12 组中的 sun4u 族:


> getTopoObject t=/menlo_park/building12 pollType=ahost \
arch="SunOS 5.7" family=sun4u

以下命令将创建一个名为 headquarters_test 的组,该组位于名为 building19 的现有域中:


> createGroup t=/headquarters_test/building19 \
fullDesc="test headquarters domain" family=building-location

以下命令将创建名为 myHost 的被管理实体,该实体位于 test_domain 域的 building12 组中。拓扑对象是一个在端口 1161 中运行代理的 Sun Ultra-2 主机。


> createEntity t=/test_domain/building12/myHost \
fullDesc="my test host" family=ultra-2 topoType="" \
topoCfg="" isPolled=false pollType=ahost readInfo="" \
writeInfo="" targetHost=osftserv targetIp="" agentPort=1161

CLI 输出

CLI 提供了以下输出选项:


注意:

所有命令和日志文件均为英文。但是,对于英文以外的语言,命令说明和帮助文本遵循 Java 国际化准则。


命令输出格式

基本命令输出仅限纯文本格式。有关基本命令和扩展命令的说明,请参见CLI 命令和参数概述

扩展命令输出有两种格式:

要指定输出格式,请将 f 参数设置为与所需格式对应的值。当前支持的值为 plainhtml

通过将 height 参数设置为所需的值,可以定义命令输出的逻辑屏幕大小。可以设置 more 参数,一次一屏地显示输出。有关这些参数的说明,请参见预定义的参数和标记


实例 20–1 纯文本命令输出

下例显示了纯文本格式的 getLoadedModules 命令的部分输出。


== getLoadedModules: Results 1/16 ===============================
Module Name=Dynamic Reconfiguration
Module Key=dr
Description=Dynamic Reconfiguration (Sunfire)
Agent Name=myhost-dev86
Agent Port=161
Version=2.0
== getLoadedModules: Results 2/16 ===============================
Module Name=Config-Reader(sun4u/sun4d)
Module Key=Config-Reader4u
Description=Config Reader (sun4u/sun4d)
Agent Name=myhost-dev86
Agent Port=161
Version=1.0
...
== getLoadedModules: Results 15/16 ==============================
Module Name=DNS Synthetic Transaction [dns]
Module Key=dnsST+dnstest
Description=DNS Synthetic Transaction
Agent Name=myhost-dev86
Agent Port=161
Version=1.0
================================================================

CLI 日志文件

要将 CLI 命令记录到日志文件,请将 log 参数设置为要在其中记录命令的文件的名称。日志文件有以下格式:

日期 & 时间持续时间或信息命令和参数

实例 20–2 部分 CLI 日志文件

下例摘自命令序列日志,从中可以获得前一个 getLoadedModules 命令输出。

Fri Dec 21 14:15:12 PST 2001;0 second;set o=\
/home/examples/output.3c23b455
Fri Dec 21 14:15:23 PST 2001;0 second;set f=plain
Fri Dec 21 14:15:45 PST 2001;0 second;set a=smtg-dev21
Fri Dec 21 14:16:08 PST 2001;== START OF THREAD ==;getLoadedModules
Fri Dec 21 14:16:08 PST 2001;2 seconds;getLoadedModules
Fri Dec 21 14:16:12 PST 2001;9 seconds;print
Fri Dec 21 14:21:28 PST 2001;== START OF THREAD ==;getAgentPort
Fri Dec 21 14:21:28 PST 2001;0 second;getAgentPort
Fri Dec 21 14:21:31 PST 2001;0 second;print
Fri Dec 21 14:22:01 PST 2001;0 second;exit

CLI 过程

本节说明一些常用的 CLI 过程。

在 Solaris 操作环境中访问 CLI
  1. 要启动交互会话,请键入 /opt/SUNWsymon/sbin/es-cli 命令,后跟任何所需的全局参数。

  2. 出现 CLI 提示 (>) 时键入 login

  3. 出现 Host 提示时键入需要连接的主机的名称。

  4. 出现 LoginPassword 提示符时键入登录名和口令。

    执行步骤 1 到步骤 4 后,结果与下例相似:


    /opt/SUNWsymon/sbin/es-cli parameters
    > login
    Host: myhost
    Login: mylogin
    Password: mypassword
    Login is successful.
    >

    提示:

    通过以下命令,可以使用先前准备的 CLI 命令文件作为输入,在批处理模式下运行 CLI:/opt/SUNWsymon/sbin/es-cli -b file.


在 Microsoft Windows 环境下访问 CLI
  1. 安装 Sun Management Center 控制台层后,双击 CLI 文件夹中的 es-cli

    将显示 CLI 屏幕。

  2. 键入 login 命令。

    登录过程将提示用户指定所需的主机名和登录名。

    在下例中,主机名为 seattle,登录名为 susan


    > login
    Host: seattle
    Login: susan
    Password:
    >
访问 CLI 联机帮助
  1. 要获取所有可用 CLI 命令的列表,请在 CLI 提示下键入 help

  2. 要获取对特定命令的更多说明,请键入 help,后跟命令名称。

    例如,要获取有关 getLoadedModules 命令的更多帮助,应键入:


    > help getLoadedModules
    
控制命令输出屏幕的大小
  1. 通过将 height 参数设置为要显示的行数来定义屏幕大小。

    例如,要定义高度为 20 行的屏幕,应键入:


    > set height=20
    
  2. 要一次查看一屏输出信息,请将 more 参数设置为 on


    > set more=on
    
在日志文件中记录 CLI 命令
  1. log 参数设置为要在其中记录命令的文件的名称。


    > set log=/home/examples/log.3c254030
    

    设置 log 参数后,所有后续命令将附加到该文件中。如果此文件不存在,将创建它。

    该文件不会被覆盖,因此如果需要新的记录集,请确保创建一个新文件。

  2. 要停止记录,请对 log 参数使用 unset 命令。


    > unset log
    
在文件中记录命令输出
  1. 要在文件中记录命令输出,请将 o 参数设置为输出文件的名称。


    > set o=/home/examples/output.3c254030
    

    要停止记录,请对 o 参数使用 unset 命令。


    > unset o
    
终止 CLI 会话
  1. 要终止 CLI 会话,请键入 exit。


    > exit