WEB开发网
开发学院服务器服务器方案 通过 Shell 和 Expect 脚本实现对 IBM 刀片服务器... 阅读

通过 Shell 和 Expect 脚本实现对 IBM 刀片服务器高级管理模块固件的大量升级

 2009-12-09 00:00:00 来源:WEB开发网   
核心提示: 编写 remotechassis.tcl 脚本:要发现网络里面的 AMM,可以执行 AMM 中的remotechassis–Tmm[1]命令来完成,通过 Shell 和 Expect 脚本实现对 IBM 刀片服务器高级管理模块固件的大量升级(5),给 telnet 中需要的 IP 地

编写 remotechassis.tcl 脚本:

要发现网络里面的 AMM,可以执行 AMM 中的

 remotechassis – T mm[1] 

命令来完成。给 telnet 中需要的 IP 地址、用户名和密码三个变量赋值,然后开始请求 telnet 访问,成功之后,执行 remotechassis – T mm[1] 命令让其发现网络里面 AMM 的 IP 地址。run.sh 会调用此脚本执行后的输出,格式化后记录到 ip.out 文件中。

remotechassis.tcl 脚本具体内容如下:


清单 2. remotechassis.tcl 代码
 #!/usr/bin/expect 
 
 # 设定 timeout 指为 -1,让 expect 永远等待输入 
 set timeout -1 
 
 # 设定输入提示 
 if { $argc != 3 } { 
  puts "Usage $argv0 hostname userid password" 
  exit 1 
 } 
 
 # 设定 telnet AMM 的三个变量 
 set host [lindex $argv 0] 
 set user [lindex $argv 1] 
 set pass [lindex $argv 2] 
 
 # 执行 telnet 命令,并将 ip 地址传递给 telent 
 spawn telnet $host  
 expect *name:   # 等待用户名输入 
 send "$userr"  # 发送用户名字符串 
 expect *assword: # 等待密码输入 
 
 send "$passr"  # 发送密码字符串 
 expect system> 
 
 # 发送 remotechassis 命令 
 send " remotechassis -T mm[1]r" 
 expect system> 
 
 # 发送 exit 命令退出 telent 
 send "exitr" 
 expect eof 

上一页  1 2 3 4 5 6 7 8  下一页

Tags:通过 Shell Expect

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接