$ cat test.sh
#!/bin/bash
password="helloworld"
expect <<EOF
set time 5
spawn <cmd_or_shellscript>
expect {
"<prompt 1>: " { send "${password}\r" }
}
expect {
"<prompt 2>: " { send "${password}\r" }
}
expect {
"<prompt 1>: " { send "${password}\r" }
}
expect {
"<prompt 2>: " { send "${password}\r" }
}
expect eof
EOF
注意:
- 一个<prompt>用一个expect,不要多个<prompt>放在一个expect里面
- 所有的<prompt>按顺序排列
- 重复的<prompt>要单独列出来,expect不会重复使用
网友评论