LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1116|回复: 5

关于expect 的问题,有谁会啊

[复制链接]
发表于 2008-3-3 13:37:22 | 显示全部楼层 |阅读模式
1 #!/usr/bin/expect --
      2 set USER [lindex $argv 0]
      3 set IPADDR [lindex $argv 1]
      4 set PW [lindex $argv 2]
      5 set app "ssh $USER\@$IPADDR"
      6 #spawn ssh "$USER\@$IPADDR"
      7 spawn  "$app"
 楼主| 发表于 2008-3-3 13:38:34 | 显示全部楼层
上面这段语句是没法执行的,
要上实现类似上述功能,怎么做啊?怎么修改可以达到上述目的
回复 支持 反对

使用道具 举报

发表于 2008-3-26 16:45:46 | 显示全部楼层
不知道楼主弄明白了没有 明白了 告诉我一声 哈哈~~
回复 支持 反对

使用道具 举报

发表于 2008-3-28 00:48:10 | 显示全部楼层

  1. #!/usr/bin/expect -f
  2. set host [lindex $argv 0]
  3. if {$host=="work"} {
  4.         set password "passwd_at_work"
  5.     set user "user_at_work"
  6. }

  7. spawn ssh -X $user@$host
  8. expect -re "^.*(.) $"
  9. set match $expect_out(1,string)
  10. if {$match=="?"} {
  11.             send "yes\r"
  12.             expect "assword:"
  13.             send "$password\r"
  14.             interact
  15.   }
  16. if {$match==":"} {
  17.             send "$password\r"
  18.             interact
  19. }
复制代码


调用  myssh host_name
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-3-28 16:05:30 | 显示全部楼层
heejun   你好

        你寫的語句沒有錯,不過與我的意思有點不一樣,
1.我希望在spawn 後面跟一個變量,變量的內容是真正執行的語句

2.如何得到ssh 等語句執行後的返回值?
3.如果是spawn ftp 1.1.1.1 ,如果得到輸入密碼是否正確以及,進入ftp後,輸入mput 1.txt ,這個命令是否正確執行

我的msn:yvqq@hotmail.com
回复 支持 反对

使用道具 举报

发表于 2008-3-29 12:04:32 | 显示全部楼层
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表