好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

如何向expect脚本里面传递参数 - Linux操作系统:

如何向expect脚本里面传递参数

 

比如下面脚本用来做ssh无密码登陆,自动输入确认yes和密码信息,用户名,密码,hostname通过参数来传递

 

ssh.exp

 

Python 代码  

#!/usr/bin/expect  

set timeout 10  

set username [lindex $argv 0]  

set password [lindex $argv 1]  

set hostname [lindex $argv 2]  

spawn ssh-copy-id -i .ssh/id_rsa.pub $username@$hostname  

expect "yes/no"  

send "yes\r"  

expect "password:"  

send "$password\r"  

  

expect eof  

 

 

expect接收参数的方式和bash脚本的方式不太一样,bash是通过$0 ... $n 这种方式,而expect是通过set <变量名称> [lindex $argv <param index>],例如set username [lindex $argv 0]

 

查看更多关于如何向expect脚本里面传递参数 - Linux操作系统:的详细内容...

  阅读:70次