跳到主要内容

使用Saydo命令行界面

Solace 命令行界面(CLI)是一个基于文本的界面,用于配置和监控 Solace 事件代理.它允许用户执行事件代理管理、配置和配置以及网络故障排除任务.CLI 在事件代理启动后自动启动.

CLI 支持命令补全,因此您不需要输入命令或选项的完整名称.如果您输入命令的一部分,然后按下 Tab 键,CLI 会列出您可以在命令字符串中该点输入的选项.只要您输入的命令或选项名称的字符足以避免与其他命令或选项混淆,CLI 就可以理解您正在输入的内容并完成它.

Solace CLI 的参考指南可以在以下位置找到:设备 CLI 命令和软件事件代理 CLI 命令.

登录到CLI

设备和软件代理访问 CLI 的方法不同.

在设备上访问CLI

在设备上,您可以通过管理控制台或安全外壳(SSH)连接登录到 CLI.

在没有 IP 地址的初始登录到设备时,您必须设置管理控制台(请参阅连接管理控制台),并使用提供的电缆将其直接连接到设备后板上的 RS-232 串行控制台端口.

一旦分配了 IP 地址,您就可以通过 SSH 登录到 CLI.要通过 SSH 登录,您的主机计算机上必须安装 SSH 版本 2.0 客户端软件.Solace PubSub+ 事件代理使用 SSHv2 的键盘/交互式身份验证.请确保您在使用的 SSH 客户端上启用键盘/交互式身份验证.

在软件事件代理上访问CLI

要访问容器上的 CLI,您可以连接到端口 2222 上的 ssh(假设您使用的是默认端口),或者在容器中运行 cli 命令.例如,运行以下 Docker 命令:

>docker exec -it <container_name> /usr/sw/loads/currentload/bin/cli -A

认证到CLI

当用户成功登录或注销,或在 CLI、SEMP、shell、scp 或 sftp 会话中身份验证失败时,身份验证事件将写入事件日志.

每个 PubSub+ 事件代理允许八个活跃且并发的 CLI 用户会话,不包括始终可用的串行控制台端口,该端口位于 PubSub+ 设备的后部.此限制不适用于文件传输用户账户.

如果您尝试登录时没有空闲的 CLI 会话,您将被阻止,因为在这种情况下没有其他 SSH 客户端可以登录到 SSH 服务器.登录尝试失败,并返回错误消息 Max CLI sessions are already active.如果发生这种情况,请使用 SSH 命令参数 force 来覆盖并断开最空闲的 CLI 用户会话(例如,ssh soladmin@solace1 force).然而,使用 force 选项只会断开最空闲的用户.然后您需要在不使用 force 选项的情况下再次登录以占用空闲的 CLI 用户会话.此外,如果已经有空闲的 CLI 会话可用,则使用此选项不会强制任何用户会话退出.

在初始登录时,当以下提示出现在您的计算机屏幕上时,将建立对 Solace PubSub+ 事件代理的通用访问:

login>

输入有效的 CLI 用户账户名称:

login as: <assigned_user_name>

当提示您输入密码时,输入用户账户的指定密码:

Password: <assigned_password>

一旦建立 CLI 连接到事件代理,将出现 CLI 标题和提示:

System Software. SolOS-TR Version <version number>
Copyright 2004-20<xx> Solace Corporation. All rights reserved.
solace>

在此提示(>)处,您处于 CLI 命令结构的用户 EXEC 级别.

如果您正在登录到新部署的事件代理,并且 CLI 用户账户尚未配置,您可以使用默认的管理员 CLI 用户账户名称(admin)和密码(admin)登录到事件代理.出于安全原因,Solace 建议系统管理员在完成初始 Solace PubSub+ 软件配置后更改管理员用户账户的默认密码.有关管理 CLI 用户账户的信息,请参阅管理和 Shell 用户.

设置CLI分页输出

默认情况下,CLI 根据您当前的屏幕大小限制显示 show 命令的行数.

要设置用于分页输出的特定行数,请输入以下用户 EXEC 命令:

solace> paging [size <size>]

其中:

size <size> 指定限制输出页面大小的行数.有效值为 1 到 2147483647.

此命令的无版本 no paging 禁用分页.

设置CLI非活动超时

CLI 有一个非活动计时器,默认情况下,如果五分钟内没有输入命令,会自动注销非活动的 CLI 用户.

要更改事件代理上 CLI 用户会话的非活动超时值,请输入以下命令:

solace> enable
solace# configure
solace(configure)# console timeout <idle-timeout>

其中:

<idle-timeout> 是一个整数值,表示非活动超时(以分钟为单位).有效范围是 0 到 43200.要禁用非活动计时器,请输入 0.

Config-Sync 不会自动同步此对象或属性.因此,如果事件代理用于高可用性(HA)冗余配置或在复制站点中,您必须在每个配对事件代理或复制的消息 VPN 上手动配置此对象/属性.

要确定对象/属性是否由 Config-Sync 同步,请查找用于配置对象/属性的命令在 CLI 命令参考中,或在 Solace CLI 中输入命令,以 " ?" 结尾.帮助列表将显示对象/属性是否被同步.

更改单个会话的CLI非活动超时

您可以仅更改当前 CLI 用户会话的 CLI 非活动计时器,而不是全局更改.每个会话的 CLI 非活动超时设置会覆盖全局超时设置,但不会在事件代理上的所有 CLI 用户会话之间持久存在.

要更改您当前 CLI 用户会话在 Solace PubSub+ 事件代理上的 CLI 非活动超时设置,请输入以下命令:

solace> enable
solace# session timeout <idle-timeout>

其中:

<idle-timeout> 是表示非活动超时值(以分钟为单位)的整数值.有效范围是 0 到 43200.要禁用非活动计时器,请输入 0.

显示CLI非活动超时设置

要显示 Solace PubSub+ 事件代理上所有 CLI 用户会话的全局非活动超时配置,请输入以下用户 EXEC 命令:

solace> show console

要显示 Solace PubSub+ 事件代理上所有当前 CLI 用户会话的非活动超时配置,请输入以下用户 EXEC 命令:

solace> show session

添加CLI登录文本横幅

管理员可以配置自定义文本横幅,以便在 CLI 用户和文件传输用户通过串行管理控制台或 SSH 连接登录到 Solace PubSub+ 事件代理时显示.登录横幅文本将在提示用户输入密码之前显示.默认情况下,不使用登录横幅.

配置的登录横幅文本将被保存,以便在 Solace PubSub+ 事件代理的版本升级后继续使用.如果 Solace PubSub+ 事件代理升级并且横幅文本被修改,然后 Solace PubSub+ 事件代理随后降级到之前的软件版本,则使用旧版本的横幅文本.

当 Solace PubSub+ 事件代理作为高可用性(HA)冗余对部署时,如果启用了 Config‑Sync 设施,则登录横幅文本将在配对之间自动同步(请参阅 Config-Sync 配置).

要配置登录横幅文本,请输入以下命令:

solace> enable
solace# configure
solace(configure)# console
solace(configure/console)# login-banner [{text <banner-text>} | {file <file-name>}]

其中:

text <banner-text> 直接指定 CLI 或文件传输用户登录时显示的横幅文本.<banner-text> 是要显示的横幅文本(最多 2,048 个字符).接受标准 CLI 转义字符(请参阅将不可打印字符作为 CLI 参数输入).使用 " \n" 在 CLI 中插入新行(例如,以下横幅文本将在 CLI 中显示在三行上:" Warning!\nProperty of Company X.\nAny unauthorized access is strictly prohibited.").

file <file-name> 指定使用提供要显示的横幅文本的文件.<file-name> 是一个字符串文本(最多 255 个字符),提供从 jail 文件系统目录加载的文件的名称(例如,jail/corporateLoginBannerFile).

此命令的无版本 no login-banner 清除登录横幅.

Config-Sync 不会自动同步此对象或属性.因此,如果事件代理用于高可用性(HA)冗余配置或在复制站点中,您必须在每个配对事件代理或复制的消息 VPN 上手动配置此对象/属性.

要确定对象/属性是否由 Config-Sync 同步,请查找用于配置对象/属性的命令在 CLI 命令参考中,或在 Solace CLI 中输入命令,以 " ?" 结尾.帮助列表将显示对象/属性是否被同步.

要显示 CLI 用户和文件传输用户登录到 Solace PubSub+ 事件代理时显示的任何自定义文本横幅,请输入以下用户 EXEC 命令:

solace> show console login-banner

命令级别

CLI 使用以下类型的命令:

  • EXEC命令
  • CONFIG命令

EXEC命令

有三种执行(EXEC)命令级别:

  • 用户 EXEC—允许您查看基本系统信息并执行简单的任务,如 ping、Show 命令和验证连接.您不能对事件代理配置进行任何更改. 用户 EXEC 级别命令位于 CLI 层级结构的顶部.这些是您通过 CLI 连接到设备时首先可以访问的命令.

要更改事件代理配置,您必须移动到 CLI 层级结构的其他级别.您可以输入用户 EXEC 级别命令 enable 以转到特权 EXEC 级别,从该级别您可以到达其他更强大的配置命令级别.有关更多信息,请参阅到达其他 CLI 命令级别.

  • 特权 EXEC—允许您使用用户 EXEC 级别相同的命令以及不需要将更改保存到系统-config 文件的配置命令.特权 EXEC 级别命令主要用于在事件代理和网络之间传输和存储软件映像和配置文件以及审查配置. 从特权 EXEC 级别,您可以输入 admin 命令以到达管理员 EXEC 级别,或输入 configure 命令以到达全局 CONFIG 级别.

  • 管理员 EXEC—允许您使用用户 EXEC 和特权 EXEC 级别相同的命令以及对配置实体具有服务影响的命令(例如,断开客户端连接或删除转盘消息).同样,这些命令不需要将更改保存到系统-config 文件.

对于 show 命令,这是常见的用户 EXEC 级别命令,您还可以在您想要查看信息的对象名称中使用通配符,而不是输入对象的完整名称.例如:

  • 您可以输入对象名称的一部分和通配符字符 * 来表示名称的零个或多个任意字符(" show queue cx* message-vpn default" 返回 " queue cx134" 和 " cx142").仅输入通配符字符 * 作为名称将显示所有消息 VPN.
  • 您还可以输入通配符字符 ? 来表示名称的一个任意字符(" show smrp subscriptions message-vpn default topic #M?AST/>" 返回 " #MCAST/>").

CONFIG命令

配置(CONFIG)命令允许您对 Solace PubSub+ 事件代理进行配置更改.每个配置命令在输入后立即生效,并保存到内部事件代理数据库中维护的系统-config 文件中.这允许配置更改在事件代理重启后仍然有效.

全局 CONFIG 命令级别是从特权 EXEC 级别进入的第一个级别.全局 CONFIG 级别允许您在事件代理上全局应用或修改参数.

例如,在全局 CONFIG 级别内,您可以:

  • 将功能全局应用于事件代理
  • 配置、启用或禁用功能或功能
  • 访问所有 CONFIG 模式

要到达全局 CONFIG 级别,请在特权 EXEC 级别输入 configure.

示例:

solace# configure
solace(configure)#

CLI 现在处于全局 CONFIG 级别.从这个级别,您可以进入许多其他 CONFIG 子级别之一,具体取决于您想要在 Solace PubSub+ 事件代理上配置的内容(例如,接口 CONFIG 或客户端用户名 CONFIG).

确定命令上下文

命令级别为 CLI 设置了上下文,这可以帮助您:

  • 确定您在 CONFIG 命令级别中的位置
  • 确定您正在配置的内容
  • 转到其他 CLI 命令级别

每个命令级别都有其独特的 CLI 命令提示,以让您知道您当前处于哪个级别,并防止您进行可能对 Solace PubSub+ 事件代理操作产生不利影响的配置错误.

如下表所示,CLI 命令提示在命令结构的每个级别后都会发生变化,以便轻松识别当前级别.

命令级别CLI 提示
用户 EXECsolace>
特权 EXECsolace#
管理员 EXEC 级别solace(admin)#
全局 CONFIGsolace(configure)#

命令上下文

到达其他CLI命令级别

要更改事件代理配置,您必须从 CLI 命令结构的用户 EXEC 级别(建立 CLI 连接后您所处的级别)移动到 CLI 层级结构的其他级别.主要 CLI 命令级别的关系如下所示.

CLI命令级别关系

img

要从用户 EXEC 级别到达特权 EXEC 级别命令,请输入以下命令:

solace> enable
solace#

从特权 EXEC 级别,您可以到达管理员 EXEC 或全局 CONFIG 级别.

  • 要从特权 EXEC 级别到达管理员 EXEC 级别命令,请输入以下命令:
solace# admin
solace(admin)#
  • 要从特权 EXEC 级别到达全局 CONFIG 级别命令,请输入以下命令:
solace# configure
solace(configure)#

从全局 CONFIG 级别,您可以到达 CONFIG 命令结构的特定功能级别.

示例:

solace(configure)# service
solace(configure/service)#

CLI 移动到服务 CONFIG 级别.

返回命令级别

要返回命令级别,您可以使用以下命令:

  • End—允许您退出当前的 CLI CONFIG 命令级别并返回到特权 EXEC 级别. 示例:
solace(configure/message-spool)# end
solace#
  • Exit—允许您退出当前的 CLI 命令级别并返回到上一级别.在用户 EXEC 级别,exit 命令将导致退出 CLI. 示例:
solace(configure/client-profile)# exit
solace(configure)#
  • Home—允许您退出当前的 CLI 命令级别并返回到用户 EXEC 级别.

示例:

solace(configure/routing)# home
solace>

CLI命令结构

许多 CLI 命令需要作为命令的一部分输入文本或数字.这些字段可能是必需的或可选的,具体取决于信息是如何用括号括起来的.为清晰起见,以下提供了一些 CLI 命令示例.

示例 1

logging debug {<subsystemId> | all} [level <level>] [mask <mask>]

当项目用 < > 符号括起来时,请求的信息是一个变量且是必需的.

当项目用 [ ] 符号括起来时,请求的信息是可选的.

当项目用 符号括起来时,请求的信息是一个变量,其中只需一个.

当项目没有用 < >、[ ] 或 符号括起来时,项目是一个必需的关键词.

当两个或多个选项用 | 符号分隔时,您必须输入其中一个选项作为命令的一部分.

要快速显示 CLI 级别或命令字符串中下一个选项的可用选项,请在提示符处输入单个问号(?),或按 Tab 键.

示例 2

要在用户 EXEC 级别查看所有可用命令,请在该级别输入双问号(??):

solace> ??
 Commands available in the current mode:
enable - Use this command to enter the Privileged EXEC level of
the CLI to perform appliance configuration.

Global commands available in any mode:
[no] alarm-display - Use this command to enable the display
of 3200 Series appliance system alarms in
the current CLI session on a
session-by-session basis. The no version
disables the displaying of appliance system
alarms in the current CLI session.
cd - Use this command to change the current
working directory on the appliance.
. . .

tree - Use this command to show the CLI command
tree, starting from the current mode.

Complete help for a command can be displayed by entering:
"<command> ?"

Output of any command can be redirected to overwrite a file using '>':
"show version > version.txt"

Output of any command can be redirected to append to a file using '>>':
"show version >> version.txt"

您还可以在个别命令后输入问号(?),以查看所有可用选项或检查上下文.

示例 3

要查看可能的 show 命令选项,请输入以下用户 EXEC 命令:

solace> show ?
   COMMAND:
show [acl-profile ... | authentication ... | backup | bridge ... |
cache-cluster ... | cache-instance ... | client ... |
client-certificate-authority ... | client-profile ... |
client-username ... | clock ... | cluster ... |
compression | config-sync ... | console ... | cspf |
current-config | debug ... | deferred-config |
distributed-cache ... | domain-certificate-authority ... |
environment | home-cache-cluster ... | hostname |
interface ... | ip | jndi | kerberos ... | ldap-profile ... |
log | logging | memory | message-spool ... | message-vpn ... |
mqtt | oauth-profile ... | paging | process ... |
product-key | queue ... | queue-template ... |
radius-profile ... | redundancy ... | replay-log ... |
replicated-topic ... | replication ... | router-name |
routing | semp-session ... | sequenced-topic ... | service ... |
session | smrp | ssl |
standard-domain-certificate-authority ... | stats |
storage-element ... | syslog ... | system ... |
topic-endpoint ... | topic-endpoint-template ... |
transaction ... | username ... | version | web-manager]

DESCRIPTION:
Use this command to display a variety of configuration and statistical
information about the router.

MINIMUM REQUIRED SCOPE/ACCESS LEVEL:
global/none
---Press any key to continue, or `q' to quit---

CLI命令行提示

在 CLI 中,命令行提示识别主机名和命令模式.主机名是您通过设置(或使用 hostname 全局 CONFIG 命令)设置的事件代理的名称;命令模式指示您在 CLI 命令结构中的位置.

img

在大多数情况下,Solace 客户文档使用 solace 作为主机名.这是默认的系统主机名.

示例:

solace(configure)# create message-vpn <vpn-name>

在讨论冗余场景时,通常使用 solace1 作为一台事件代理,solace2 作为其配对.

示例:

solace1(configure)# ip vrf msg-backbone
solace2(configure)# ip vrf msg-backbone

对于某些操作,CLI 会提示您进行响应.可接受的默认响应如下:

  • 您可以按 < y > 同意提示并继续.
  • 您可以按 < n > 不同意提示并取消操作.

CLI关键词和参数

CLI 命令由两个主要元素组成:关键词和参数.

  • 关键词 每个命令至少需要一个关键词;然而,命令可以包含其他可选关键词.关键词必须准确输入到 CLI 中才能被识别.这些是关键词的示例:

    • reload
    • clear
    • configure
    • end
    • set

关键词标识要执行的操作.您可以缩写关键词;然而,您必须输入足够的初始字符以明确识别命令.例如,如果您想要指定的关键词是 source,而您只输入 s,则会出现错误.错误表明一个或多个可能的关键词以 s 开头,从而使您的输入模糊不清.

  • 参数 参数通常是命令的必需元素;然而,对于某些命令,参数不是必需的.参数通常是您在关键词后指定的值.有不同类型的参数,如字符串、整数或 IP 地址.CLI 指示您必须输入的参数类型.当您看到数字范围或大写字母时,它表明您必须指定一个值.

关键词和参数结合

通过将关键词和参数按正确的顺序组合,您可以开始使用 CLI 配置和监控您的事件代理.例如,您可以指定 hostname 全局配置命令以更改您的事件代理在初始设置时(通过 setup 特权 EXEC 命令)最初分配的名称.

hostname 全局配置命令需要一个 hostname 关键词和一个相关参数.在这种情况下,变量 <name> 参数使用一个最多 64 个字符的字符串值作为主机的名称.

router(configure)# hostname <name>

img

当您输入 hostname 全局配置命令时,新的主机名将出现在命令行提示中.

示例:

router(configure)# hostname solace
solace(configure)#

CLI命令输出重定向

而不是要求操作员从屏幕上复制和粘贴 CLI 命令的输出以进行编辑或传输到另一个事件代理,您可以使用 CLI 输出重定向功能将此类输出重定向到事件代理根目录的指定子目录中的文件.在您可以指定它之前,该子目录必须已经在事件代理上存在.此外,输出可以重定向以使用 ">" 写入文件,或使用 ">>" 追加到文件.

例如,以下命令执行以下操作:

  • 显示名为 blue 的消息 VPN 的配置
  • 将输出重定向到 cliscripts 目录中的 blue.cli 文件
  • 写入 blue.cli 文件(即,创建新版本并覆盖任何先前存在的文件版本)
solace> show current-config message-vpn blue > cliscripts/blue.cli

CLI 分页在重定向 CLI 命令的持续期间自动禁用,但确认提示和错误和警告消息不是;它们仍然在 CLI 控制台上显示.

部分关键词 <Tab>

在命令行的任何位置,您可以按 <Tab> 以显示有效的输入.

当您无法回忆完整的命令名称或关键词时,输入前几个字母,按 <Tab>,系统将完成您的部分输入.然而,您必须输入足够的字符以提供一个唯一的缩写.如果您的部分输入的命令不是唯一的,CLI 将向您显示有效的选项列表.

示例:

solace> show message-v <Tab>
message-spool message-vpn
solace> show message-s <Tab>
solace> show message-spool

随后的 <Tab> 将显示命令/参数对的有效参数:

solace> show message-spool <Tab>
detail message-vpn rates stats

* 和?作为输入通配符

对于某些命令,"*" 和 " ?" 字符被允许作为命令输入请求信息的通配符.

  • "*" 字符可以匹配 0 个或更多未知字符.

示例:

solace> show message-vpn r*d 可能显示消息 VPN red 的输出.

solace> show message-vpn red* 可能显示消息 VPN redredder 的输出.

solace> show message-vpn * 可能显示消息 VPN redredder 的输出.

"*" 字符还可以用作 Solace 消息格式(SMF)主题订阅的通配符.有关其在 SMF 主题订阅中的使用信息,请参阅主题支持和语法.

  • " ?" 字符只能匹配一个未知字符.

示例:

solace> show message-vpn 1?3 可能显示消息 VPN 12313 的输出.

" ?" 字符还可以用在命令的末尾以显示该命令的帮助.有关其用于显示命令帮助的使用信息,请参阅使用帮助.

双引号中的特殊字符

如前所述,?> 是具有特殊含义的字符(? 是帮助请求,>>> 是重定向请求).如果这些字符在双引号中使用,它们将失去特殊含义并被视为字面量.

示例:

没有双引号时,? 表示对 message-vpn 命令的帮助请求.

vmr-134-44(configure)# message-vpn ?
   COMMAND:
message-vpn <vpn-name>
create message-vpn <vpn-name>
no message-vpn <vpn-name>

DESCRIPTION:
Create, modify, or delete a Message VPN.

Message VPNs (Virtual Private Networks) allow for the segregation of
topic space and clients. They also group clients connecting to a
network of message brokers, such that messages published within a
particular group are only visible to that group's clients.

MINIMUM REQUIRED SCOPE/ACCESS LEVEL:
vpn/read-write
Notes/Exceptions:
global/read-write is required to create or delete instances of this
object.

CONFIG-SYNC:
HA: yes
Replicated VPNs: no

PARAMETERS:
<vpn-name> - [1..32 chars] The name of the Message VPN.

有双引号时,"?`` 被视为字面量,系统尝试查找名为 ?` 的消息 VPN.

solace(configure)# message-vpn "?"
 Invalid command input
message-vpn "?"
^
-> parameter parse error: Cannot contain the following characters: *?
Expected one of the following:
<vpn-name> - [1..32 chars] The name of the Message VPN.

使用帮助

Solace CLI 提供了多种有用的上下文敏感帮助功能.使用帮助功能时需要记住的一个重要事项是,在 "?" 字符前使用空格或不使用空格会产生不同的结果.以下表格总结了帮助系统.

命令描述
?, <Tab>, 或 tree列出当前 CLI 级别可用的命令或命令选项.
??, help, 或 tree all列出当前和全局 CLI 级别可用的命令或命令选项.
tree global列出全局 CLI 级别可用的命令或命令选项.
partial-command<Tab>如果您提供了不模糊的缩写,则完成您输入的部分命令.如果模糊,则 CLI 列出可用的命令选项.
command<space>?在当前 CLI 级别提供有关特定命令及其可用参数的详细帮助.

帮助命令

?命令

当您需要额外信息时,可以输入问号(?)键.当您输入 ? 时,将显示所有可用选项.当您在单独一行上输入 ?,或者在它前面有一个或多个空格时,将显示所有下一个可用选项的列表.请参阅 ? 命令示例 1.

或者,用户可以在命令末尾加上 ? 以显示该命令的完整帮助.当已知命令关键词但参数列表和格式未知时,此功能非常有用.请参阅 ? 命令示例 2.

? 命令示例 1

从提示符开始,您可以输入 ? 以显示在线帮助:

solace# ?

Commands available in the current mode:
admin - Use this command to reach the Admin EXEC level.
backup - Use this command to immediately create a manual
local backup of your configuration database file on
the appliance.
boot - Use this command to upgrade or downgrade the appliance
software to a new or old SolOS software load and
activate it, or to revert to and run the previous
SolOS software version that was running before the
last upgrade.
clear - Use this command to clear various appliance
statistics.

. . .

setup - Use this command to quickly set the hostname,
interfaces, clock and time zone on the appliance.
shell - Use this command to acess the SolOS shell.

Global commands (available in all modes) can be displayed by entering:
"??"

Complete help for a command can be displayed by entering:
"<command> ?"

Output of any command can be redirected to overwrite a file using '>':
"show version > version.txt"

Output of any command can be redirected to append to a file using '>>':
"show version >> version.txt"

solace#

? 命令示例 2

您可以在 CLI 命令末尾加上 ? 以显示该命令的完整帮助:

solace(configure)# hardware ?
COMMAND:
hardware [disk ... | message-spool | power-redundancy ... |
topic-routing]

DESCRIPTION:
Use this commmand to configure routing modules and disks on the
appliance.

MINIMUM REQUIRED SCOPE/ACCESS LEVEL:
global/read-write

PARAMETERS:
disk - Enable/disable hard disk
[no] message-spool - Configure message spool hardware options
power-redundancy - Configure power-redundancy
[no] topic-routing - Configure topic routing hardware options

帮助命令

您可以输入 help 命令以显示上下文敏感帮助系统的简要描述.

solace# help

示例:

solace# help
 Commands available in the current mode:
admin - Use this command to reach the Admin EXEC level.
backup - Use this command to immediately create a manual
local backup of your configuration database file on
the appliance.
boot - Use this command to upgrade or downgrade the appliance.
. . .
Global commands available in any mode:
[no] alarm-display - Use this command to enable the display
of 3200 Series appliance system alarms in
the curren CLI session on a
session-by-session basis. The no version
disables the displaying of appliance
alarms in the current CLI session.
cd - Use this command to change the current
working directory on the appliance.
dir - Use this command to list the contents of
a directory on the appliance.
end - Use this command to exit the current
CONFIG command level of the CLI and
return to the Privileged EXEC level

. . .

Complete help for a command can be displayed by entering:
"<command> ?"

Output of any command can be redirected to overwrite a file using '>':
"show version > version.txt"

Output of any command can be redirected to append to a file using '>>':
"show version >> version.txt"

Tree命令

您可以输入:

  • tree 以显示仅在当前 CLI 级别可用的命令或命令选项列表
  • tree all 以显示在当前和全局 CLI 级别可用的命令或命令选项列表
  • tree global 以显示仅在全局 CLI 级别可用的命令或命令选项列表

示例:

solace# tree global
GLOBAL COMMANDS - available in all modes:
[no] alarm-display
cd [<directory>]
dir [<pattern>]
end
exit
help
home
logout
more <pattern>
[no] paging [size <size>]
ping <vrf-ip-addr-or-host> [ip-interface <ip-interface>]
pwd
session timeout <idle-timeout>
show*
acl-profile <name> [message-vpn <vpn-name>]
[detail[client-connect] [publish-topic]
[subscribe-topic] |users]
alarm
authentication [user-class cli-semp] [current-user
| access-level [{default |
ldap [group <group-name-pattern>]}]
[detail]]
backup

. . .

source script <script-name> [stop-on-error]
[no-prompt]
[no] strict-column-wrapping
tree [all | global]

* indicates a mode that can be "typed through"

编写和运行基本CLI脚本

为了简化常见或重复配置设置的加载,CLI 提供了一个基本的脚本功能,允许您定义和运行运行多个 CLI 命令的脚本.基本脚本文件可以用来存储多个 CLI 命令.根据您的需要,您可能希望将所有 CLI 命令存储在一个脚本文件中,或者按功能对脚本进行分组.

要运行基本 CLI 脚本文件,请将脚本保存为文本,然后使用 copy 特权 EXEC 命令将脚本传输到事件代理.

然后,您可以使用以下用户 EXEC 命令从 CLI 内部运行基本 CLI 脚本文件:

solace> source script <script-name> [stop-on-error] [no-prompt]

其中:

<script-name> 是 CLI 脚本文件的名称.脚本文件必须位于事件代理上的目录中.

stop-on-error 指定在遇到错误时停止运行脚本.

通常,当 CLI 脚本运行时,即使遇到错误也会运行到完成.然而,如果脚本中途某个命令失败,而后续命令依赖于它正确运行,这可能会导致问题.为了避免这种情况,您可以使用 stop-on-error 参数.

no-prompt 指定跳过是/否确认提示.它相当于对所有命令提示输入是.

某些 CLI 命令在运行时需要确认形式为 "Do you want to continue (y/n)" 的确认. 使用 no-prompt 参数允许 CLI 脚本在不中断的情况下运行到完成.

编写或运行 CLI 脚本时始终注意以下要点:

  • 脚本中的命令必须在当前操作模式中有效.
  • 允许脚本嵌套,最多嵌套级别为五.
  • 如果脚本中的命令包含语法错误,或因其他原因失败,则文件中的其余命令仍然运行(即,脚本执行不会因失败而中止),除非使用了 stop-on-error.
  • 脚本不需要在末尾有 exitlogout 命令.如果存在,这些命令将正常运行,以便在用户模式下运行时退出 CLI 会话.
  • 可以在 CLI 脚本文件本身中直接包含注释,并以感叹号(!)开始行来标识.这告诉 Solace PubSub+ 事件代理信息是注释,不应显示或解析.注释不需要结束标签.如果您决定包含注释,任何阅读或编辑您的 CLI 脚本的人都可以阅读它们.任何解析或验证您的 CLI 脚本的事件代理或应用程序都会忽略注释信息.

当前脚本功能不包括控制流结构、环境变量或其他更复杂的脚本功能.

输入不可打印字符作为CLI参数

可以将不可打印字符作为 CLI 参数输入为 3 位八进制值,前面加上反斜杠转义字符(例如," \027"),两位十六进制值,前面加上转义的 x:" \x",或一组标准转义序列:" \a"、" \b"、" \f"、" \n"、" \r"、" \t"、" \\" 和 " \"".CLI 将这些序列解释为单个字符,其值代表转义序列.

要输入包含空格的值,请用双引号("")括起来.

如果您使用的是为 Solace PubSub+ 软件版本 6.1 之前的版本编写的现有 CLI 命令脚本(包括旧版 show current-config 用户 EXEC 命令的输出),在执行之前必须修改这些脚本,如果它们包含八进制转义序列.要修改现有 CLI 命令脚本,请转义脚本中包含的任何文档化转义序列的转义字符(例如,将值 "\027" 更改为 "\\027").还建议(但不要求)转义所有反斜杠,以便为转义序列的未来扩展留出空间.

检索输入的CLI命令以重用

所有输入的 CLI 命令都存储在事件代理的历史缓冲区中.要检索这些输入的命令,您可以使用键盘箭头键导航历史缓冲区.然后,您可以复制这些检索到的命令,并原样重用它们,或编辑它们以重用.

显示系统警报

要启用在当前 CLI 会话中显示 Solace PubSub+ 事件代理系统警报,请输入以下用户 EXEC 命令:

solace> alarm-display

此命令的无版本 no alarm-display 禁用在当前 CLI 会话中显示事件代理系统警报.

要显示当前 CLI 会话的当前警报状态,请输入以下用户 EXEC 命令:

solace> show alarm