发现 expect真是个好东西
#!/usr/bin/expect
set filename [lrange $argv 0 0]
send_user $filename
set timeout 30
cd ******/form
send_user "update 69"
spawn scp $filename root@*.*.*.*:/opt/weblogic*.*.*.*/form
expect "password:"
send "********\r"
interact
send_user "update 85"
spawn scp $filename root@*.*.*.*:/opt/weblogic/*.*.*.*/data/form
expect "password:"
send "*********\r"
interact
send_user "update 87"
spawn scp $filename root@*.*.*.*:/opt/weblogic/*.*.*.*/data/form
expect "password:"
send "********\r"
interact
send_user "update 120"
spawn scp $filename root@*.*.*.*:/opt/weblogic/*.*.*.*/data/form
expect "password:"
send "*******\r"
interact
另外推荐阅读http://blog.csdn.net/zhuying_linux/article/details/6904568