Cisco IOS Shell 适用于 Cisco 路由器和交换机。
Cisco IOS Shell (IOS.sh) 功能为 Cisco IOS 命令行界面 (CLI) 环境提供 shell 脚本功能。Cisco IOS.sh 通过包括变量替换、路径、条件语句、循环、管道等来增强使用 CLI 控制和配置 IOS 路由器的过程,以增强 Cisco IOS CLI 用户的用户体验。
第一个问题: IOS.sh 是路由器还是交换机特定的?还是只要固件版本为 15.1 或更高版本,它们就可以用于两种类型的设备?
Cisco IOS Shell 是随 Cisco IOS 版本 15.1(4)M、15.1(2)S 和更高版本的路由器引入的。必须配置并启用 Cisco IOS.sh 才能使用路由器上的 Cisco IOS.sh 特性和功能。
我找不到任何文档来解释它何时被引入 IOS 用于交换机。
第二个问题:既然 IOS.sh 已启用,有没有办法使用 grep 获取一个部分并将其输出到我正在查看的 CLI 上?
IOS CLI 具有将命令中的文本“管道”到一组可以过滤或重定向输出的程序中的功能。Cisco IOS.sh 已扩展此功能以支持输入行上的多个“管道”命令。这些命令是并发执行的,并打印“管道”打印的最终命令。
例子
Router# show version | grep '^C'
Cisco IOS Software, 7200 Software (C7200-P-M), Experimental Version 12.2(20090611:002213)
Copyright (c) 1986-2010 by Cisco Systems, Inc.
Compiled Tue 16-Jun-10 14:23 by janedoe
Cisco 7204VXR (NPE225) processor (revision A) with 114688K/16384K bytes of memory.
Configuration register is 0x0
此示例打印所有以大写 C 开头的行。
对于在交换机上运行的新 IOS-XE 有类似的方法,例如 Cisco 3650、3850、9200、9300、9500 系列等。
这种方法称为Guestshell,它是一种基于Linux 的虚拟化环境,旨在运行自定义Linux 应用程序,包括用于自动控制和管理Cisco 设备的Python。它还包括系统的自动配置(第 0 天)。该容器外壳提供了一个与主机设备解耦的安全环境,用户可以在其中安装脚本或软件包并运行它们。
以下示例显示如何在 Catalyst 3850 系列交换机上启用 Guest Shell:
Device> enable
Device# guestshell enable
Management Interface will be selected if configured
Please wait for completion
Guestshell enabled successfully
Device# guestshell run python
Python 2.7.11 (default, Feb 21 2017, 03:39:40)
[GCC 5.3.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
Device# guestshell run bash
[guestshell@guestshell ~]$
Device# guestshell disable
Guestshell disabled successfully
Device# guestshell destroy
Guestshell destroyed successfully
这里有关于如何将 Guestshell 用于 IOS-XE 的完整指南:https ://www.cisco.com/c/en/us/td/docs/ios-xml/ios/prog/configuration/166/b_166_programmability_cg/guest_shell
.html
请注意,您需要运行 16.6 版。至少。
Cisco IOS Shell 白皮书:https :
//www.cisco.com/c/en/us/td/docs/ios/netmgmt/configuration/guide/Convert/IOS_Shell/nm_ios_shell.pdf
Cisco IOS Shell 完整命令参考:https :
//www.cisco.com/c/en/us/td/docs/ios-xml/ios/ios_shl/command/ios-shell-cr-book/ios-shell-cr -a1.html