字符编码如何在瞻博网络工作
Junos OS配置数据和操作命令输出可能包含 7 位 ASCII 字符集之外的非 ASCII 字符。当以某些格式或某些类型的会话显示操作或配置数据时,软件将转义并编码这些字符。该软件使用等效的 UTF-8 十进制参考来对字符进行转义或编码。
该CLI尝试显示以文本、集或 JSON 格式产生的配置数据中任何非 ASCII 字符。此外CLI还会尝试在以文本格式产生的命令输出中显示这些字符。在例外情况下,CLI显示 UTF-8 十进制参考。(例外情况包括 XML 格式的配置数据,以及 XML 或 JSON 格式的命令输出,)在 NETCONF 和 Junos XML 协议会话中,如果请求包含非 ASCII 字符的配置数据或命令输出,将看到类似的结果。在这种情况下,服务器会为这些字符返回等效的 UTF-8 十进制参考,用于所有格式。
例如,假设设备上配置了以下用户帐户,其中包含带 tilde (ñ) 的拉美文小字母 n。
[edit] user@host# set system login user mariap class super-user uid 2007 full-name "Maria Peña"
以文本格式显示生成的配置时,CLI打印相应的字符。
[edit] user@host# show system login user mariap full-name "Maria Peña"; uid 2007; class super-user;
当以 XML 格式在 CLI 中显示生成的配置时,ñ 字符会映射到其等效的 UTF-8 十进制参考 ñ
。如果您在 NETCONF 或标准 XML 协议会话中以任何格式显示配置,Junos结果相同。
[edit] user@host# show system login user mariap | display xml <rpc-reply xmlns:junos="http://xml.juniper.net/junos/17.2R1/junos"> <configuration junos:changed-seconds="1494033077" junos:changed-localtime="2017-05-05 18:11:17 PDT"> <system> <login> <user> <name>mariap</name> <full-name>Maria Peña</full-name> <uid>2007</uid> <class>super-user</class> </user> </login> </system> </configuration> <cli> <banner>[edit]</banner> </cli> </rpc-reply>
将配置数据加载到设备上时,可以使用其等效的 UTF-8 十进制字符参考来加载非 ASCII 字符。