教程集 www.jiaochengji.com
教程集 >  脚本编程  >  shell  >  正文 expect 实现 scp 文件时不用手动输入密码

expect 实现 scp 文件时不用手动输入密码

发布时间:2014-09-06   编辑:jiaochengji.com
expect 实现 scp 文件时不用手动输入密码,有需要的朋友可以参考下。<br /> 复制代码 代码如下:#!/usr/bin/expect -fset password 密码spawn scp 用户名@目标机器ip:拷贝文件的

expect 实现 scp 文件时不用手动输入密码,有需要的朋友可以参考下。
 

复制代码 代码如下:

#!/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

您可能感兴趣的文章:
expect 实现 scp 文件时不用手动输入密码
实现ssh自动登录的4种方法
shell结合expect写的批量scp脚本工具
expect实现scp ssh自动输入密码登录的例子
SCP命令用法详解
远程登录的简单expect脚本
用expect实现ssh自动登录服务器并进行批量管理
expect批量管理计算机的一个脚本
expect脚本远程批量管理服务器的思路解析
一个自动配置mysql主从的shell脚本

[关闭]
~ ~