您的位置:首页 > 其它

脚本不输密码执行scp命令(需要expect和send命令)

2011-06-28 11:18 204 查看



脚本如下:

#!/usr/bin/expect -f

set password 密码

spawn scp 用户名@目标机器ip:拷贝文件的路径 存放本地文件的路径

set timeout 300

expect "用户名@目标机器ip's password:" #注意:这里的“用户名@目标机器ip” 跟上面的一致

set timeout 300

send "$password/r"

set timeout 300

send "exit/r"

expect eof

附:scp参数

-r:拷贝目录

-c:允许压缩

一个完整的例子

#!/usr/bin/expect -f

set password 123456

#download

spawn scp root@192.168.1.218:/root/a.wmv /home/yangyz/

set timeout 300

expect "root@192.168.1.218's password:"

set timeout 300

send "$password/r"

set timeout 300

send "exit/r"

expect eof

#upload

spawn scp /home/yangyz/abc.sql root@192.168.1.218:/root/test.sql

set timeout 300

expect "root@192.168.1.218's password:"

set timeout 300

send "$password/r"

set timeout 300

send "exit/r"

expect eof
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐