Expect 在网络管理中发挥着重要作用
2008-11-13 08:29:20 来源:WEB开发网请注意,考虑到一些技术细节超出了本文的关注重点,在前面的描述中,我稍微有些歪曲事实;例如,常规的 Expect 可执行程序不仅扩展了 Tcl 命令集,它还可以识别启动时的一些额外的命令行参数。尽管这些内容并不是专门针对主要的主题:一个简短的 Expect 程序所能够为系统管理员完成的工作,超出了大多数人的预期。
在了解了这个背景信息之后,“passmass 是一个 Expect 应用程序”表示:
passmass 是一个以 Expect 语言编写的文本文件。
如果您在正确地安装了 Expect 和 passmass 的主机上执行 expect passmass ...,那么您将得到正确的 passmass 功能。
请注意,具体的执行方法可能有一些变种:可以在一个 Tcl 解释器中以交互的方式加载 Expect、运行 passmass、创建 passmass 作为一个独立的可执行程序,等等。同样地,这些替代方法超出了本文所关注的重点。
网络管理示例
让我们考虑一项更大的挑战,网络操作中心的日常操作中一项更典型的操作:检索一组托管的 Cisco 交换机的当前配置信息。尽管有些站点使用 SNMP 或者 HTTP 来进行这些操作,但是更常见的是使用控制台或者频内 telnet 会话来获取该信息。许多管理员认为,完成这项工作唯一可行的方法是输入与清单 2 中所示类似的命令。
清单 2. 典型的“手工”配置自检
telnet $MY_ROUTER
[User: admin]
[password: ...]
CCNA01# show running-config
[... Current configuration:
... version 12.0 ...
FIFTY LINES MORE OF CONFIGURATION DETAIL
...
End]
更多精彩
赞助商链接