庞大资源库的计算机教程网站!
设为首页
加入收藏
总编信箱
投稿或申请专栏请先 [登 陆]
首页 操作系统 程序设计 图形图像 媒体动画 机械电子 WEB开发 数 据 库 办公系列 路由技术 网络原理 网络应用
认证考试 安全技术
首页>操作系统>SCO UNIX>应用技术>正文
资料搜索
Google搜索
Google
返回上级列表

推荐文章

快速保存网页中所有图片的方法
Windows中让光驱巧妙“隐身”技
防范非法用户入侵Win 2000/XP系
两款比较典型的ASP木马防范方法
有关表格边框的css语法整理
Windows XP中可以被禁用的服务
SQL Server导出导入数据方法
Javascript所有对象的属性的获
网页(HTML)中的特殊字符
与篮球共舞,尽显模式本色
QQ病毒的手工清除方法
Photoshop为极品美女打造性感睫
天衣无缝:IIS与PHP水火也相容
SQL Server存储过程编写和优化

从服务器能够到达的所有网络设备里面提取设备配置信息

 作者:本站收集   日期:2005-3-13
字号选择〖 〗/ 双击滚屏 单击停止   


本工具用于从网络设备(CISCO)中提取配置文件,并保存到一个文本文件中。
需要 expect 软件支持, 如果你的操作系统没有这个软件,请根据需要下载
在 sco unix 中,请到 http://www.sco.com/skunkware/中下载, 三个软件: expect , tcl, tk 并安装。

主程序-----dome.sh
#!/bin/sh

counter=0

Usage()
{
echo "
Usage: $0 [iplist_filename]
功能:本程序用于读网络设备的配置信息。
参数: iplist_filename, 指定需要工作的网络设备文件。
文件格式:
节点编号 ip地址 Telnet密码 超级用户密码 节点设备说明

如果没有定义iplist_filename, 缺省文件名为:iplist
程序输入文件: iplist.out 或者 自定义文件名.out \n\n"

exit 1

}

[ $# -eq 0 ] && input="iplist"
[ $# -eq 1 ] && input=$1
[ $# -gt 1 ] && Usage


output="$input.out"
[ -r $input ] || {
echo "Error: Can't open file:$input"
exit 1
}
echo "">$output

lines=`wc -l $input|awk '{ print $1 }'`

while read node host pass1 pass2 name
do
counter=`expr $counter + 1 `
echo "\nGet configure from [ $host ], Please wait...\t[$counter/$lines]\c">&2
echo "============== begin ==============================\n">>$output
echo "NODE=$node">>$output
echo "NAME=$name">>$output
./router.cmd $host $pass1 $pass2>>$output
case $? in
0) echo "\t----\c">&2; continue;;
1) echo "\tE--- error \c">&2; continue;;
2) echo "\t-E-- error \c">&2; continue;;
3) echo "\t--E- error \c">&2; continue;;
4) echo "\t---E error \c">&2; continue;;
*) echo "\t**** error \c">&2; continue;;
esac
echo "-------------- end --------------------------------\n">>$output
done<$input

echo "\n===================\nCreate output file: $output">&2

:em02: [b:7ce538da72]调用程序 router.cmd [/b:7ce538da72]
#!/usr/local/bin/expect --
# 登陆路由器的一个命令 Script for expact
# 重要变量说明:
# routerip=路由器telnet登陆ip地址
# passwd1=路由器telnet登陆密码
# passwd2=路由器超级用户密码
# ---------------------------------------------------
if $argc!=3 {
send_user "Usage: router.cmd routerip passwd1 passwd2\n"
exit 9
}
set ROUTERIP [lindex $argv 0]
set PASSWORD1 [lindex $argv 1]
set PASSWORD2 [lindex $argv 2]
set TIMEOUT 30
set debug_flag 1
send_user "##### BEGIN\n"
spawn /usr/bin/telnet $ROUTERIP 23

set timeout $TIMEOUT
expect {
timeout {
send_user "Error 1: router ip can't arrived.\n"
send_user "##### END\n\n"
exit 1
}
"refused" {
send_user "Error 1: connection Failed.\n"
send_user "##### END\n\n"
exit 1
}
"*assword: " { send "$PASSWORD1\r" }
}

set timeout $TIMEOUT
expect {
timeout {
send_user "\nError 2: invalid telnet password...\n"
send_user "##### END\n\n"
exit 2
}
"*>" { send "enable\r" }
}


set timeout $TIMEOUT
expect {
timeout {
send_user "\nError 3: time out.\n"
send_user "##### END\n\n"
exit 3
}
"Password: " { send "$PASSWORD2\r" }
}


set timeout $TIMEOUT
expect {
timeout {
send_user "\nError 4: Invalid password for super user...\n"
send_user "##### END\n\n"
exit 3
}
"*#" { send "term len 0 \r" }
}

expect "*#"
send "show run\r"
expect "*#"
send "exit\r"
send_user "\n##### END\n\n"
exit 0

=============以上程序已经在 Sco Unix OSR5 里面测试通过

上一篇:SQL SERVER 11.0.x FOR SCO OPENSERVER 5    下一篇:文件特殊权限的解释  
[发送给好友]  [关闭窗口]  [返回顶部]   转载请注明来源:www.it00.com   
特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
责任编辑: 原点 投稿作者: 本站收集
信息来源: 网络 录入时间: 2005-3-13
关于我们 - 广告服务 - 版权申明 - 网站地图 - 联系方式 - 总编信箱 - 会员投稿