多平台统一管理软件接口,如何实现多平台统一管理软件接口
328
2022-09-22
在Cisco IOS里执行Linux Shell命令
这是很多业内人士都不知道的隐藏技巧。这些在IOS中运行的Linux命令可以提高你的工作效率,也可用于耍酷或面试等环节,让对方感到惊奇!这些命令已经在CISCO设备上存在很长时间了,根据测试,1900这样的老设备也支持。CISCO于2001年3月25日发布的一份文档说明了从IOS v15.1M版本开始支持Cisoc IOS Shell的相关细节:processing full这就启动了完整的shell进程,现在我想显示UP状态的、除了172开头和192开头之外的所有接口,所以使用了3层过滤,include就做不到这点:show ip int b | grep up | grep -v 172 | grep -v 192
如果不想显示环回口,那很简单:show ip int b | grep up | grep -v 172 | grep -v 192 | grep -v Loop
再比如显示所有UP同时又配置了地址的端口(排除掉UP却未配置地址的接口),可以这样打:show ip int b | grep up | grep -v un显示出内存中所有包含172.16.10的字符串:show run | grep 172.16.10
显示出包含1.1,却排除环回口的字符串(相当于同时使用include和exclude,传统上做不到这点):show run | grep 1.1 | grep -v Loop
uname -a 显示路由器的相关信息,uname -s、-v、-r 显示路由器的版本号,这在脚本中很有用,uname -n,显示路由器名字:
如果想要知道shell的更多功能,打入帮助:show shell functions
可见shell提供了大量的Linux命令,这可以大大提高我们的工作效率,比如head,tail等等:
通过管道,把内存中的配置写入flash:sh run > shrun.cfg
more shrun.cfg显示文件(cat也可以,q退出):
高级应用上文所述的用法是打入命令shell processing full,其实也可以仅针对当前终端使用shell,以IOS XE为例,先关闭shell功能:no shell processing full再打入terminal shell:
现在该终端支持shell命令了。如果退出终端,shell将被停止,这种仅对当前终端启用shell的方法可以减轻全局支持对设备造成的资源压力。忽略字符串的大小写,本例是Face和face通用,这可以大大提高字符串的查找效率:
show run | grep -i Face
当然可以用man查看各种命令的用法:
传统上,我们可以这样加行号显示内容:show run linenum:
但如果你这样写则不起作用:show ip route linenum因为linenum不能和show ip route配配合使用;但我这样输入就支持带行号显示路由表了:show ip route | nl | more
只看第带70字样的行:show ip route | nl | grep 70只看第70行(正则表达式):show ip route | nl | grep ^70这可以将大型路由表缩减到特定行。
按字母顺序输出:show ip int b |sortshow run | sort | more再比如,看有哪些vlan:show run | grep vlan我已经例举了一些,剩下的就是举一反三,看你的想象力了。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~