expect安装和使用需要注意的几个问题(转)
来源:互联网 发布:java的脚本语言 编辑:程序博客网 时间:2024/06/05 16:17
从远程服务器拷贝数据文件到指定的服务器上,估计是需要同学都遇到过的问题。scp 和rsync 都可以实现,rsync俺还没玩过,不过应该也比较简单吧。如果用scp来实现自动拷贝文件,但是需要用户来输入的密码,否则无法实现,怎么办?听说expect可以解决这个问题。
1。首先确认expect的包是否安装。
[root@lamp100 opt]$ rpm -qa | grep expect
如果没有则需要下载安装,可以参考:
编译安装:http://www.lamp100.com/333
rpm安装:expect-5.42.1-1.x86_64.rpm 和 expect-devel-5.42.1-1.x86_64.rpm 这个安装相对简单些
rpm下载地址:
http://mirrors.163.com/centos/5/os/i386/CentOS/
http://mirrors.163.com/centos/5/os/x86_64/CentOS/
安装过后会显示:
[root@lamp100 opt]$ rpm -qa | grep expect
expect-5.43.0-5.1
expect-devel-5.42.1-1
2.查看expect的路径,可以用
[root@lamp100 opt]$ which expect
/usr/bin/expect
[root@lamp100 opt]$ vim auto_cp_data.sh
3。确定脚本有可执行权限
chmod +x auto_cp_data.sh
1
#!/usr/bin/expect //这个expect的路径就是用which expect 查看的结果
2
3
set
date
[
exec
date
"+%y_%m_%d"
]
4
5
spawn
scp
root@10.3.32.57:/opt/htdocs/search_data/
"$date"
_raw_food.xml /opt/sourcedata/
6
7
expect
"password:"
//匹配password
8
9
send
"123456\r"
//发送密码
10
11
interact //执行完毕
另外需要注意的是:
不能按照习惯来用sh auto_cp_data.sh来这行expect的程序,会提示找不到命令,如下:
auto_cp_data.sh: line 3: spawn: command not found
couldn’t read file “password:”: no such file or directory
auto_cp_data.sh: line 5: send: command not found
auto_cp_data.sh: line 6: interact: command not found
因为expect用的不是bash所以会报错。执行的时候直接./auto_cp_data.sh就可以了。~切记!
参考链接:http://blog.csdn.net/zhuying_linux/article/details/6657020
- expect安装和使用需要注意的几个问题(转)
- 安装NetWeaver需要注意的几个问题(www.mynetweaver.cn)
- 关于使用标签需要注意的几个问题
- 使用GDI+时需要注意的几个问题
- 使用LIBSVM需要注意的几个问题
- 使用qtp需要注意的几个问题
- 使用TinyXml库需要注意的几个问题
- 使用btrace需要注意的几个问题
- 使用三极管时需要注意的几个问题
- SQLitePersistentObject使用需要注意的几个问题
- 使用btrace需要注意的几个问题
- 使用LIBSVM需要注意的几个问题
- ArcEngine_WPF 需要注意的几个问题
- Ajax需要注意的几个问题
- 在vmwareplayer中安装windows xp需要注意的几个问题
- VMware8.0安装Android x-86需要注意的几个问题
- linux下使用静态库需要注意的几个问题
- 使用模板缓冲区时需要注意的几个问题
- Oracle 按时间段分组统计
- 不用背景图片,只用css代码实现面包屑样式
- 关于线程中的异常
- 【开源项目】花密(Flower Password)VB版之大小写切换模块
- CRM中的基本概念
- expect安装和使用需要注意的几个问题(转)
- python PIL在centos6.2 安装问题
- 以Post 提交数据,并打开提交页面
- 【开源项目】花密(Flower Password)VB版之附加扰码自动匹配输入模块
- EXT分页,导出当页数据
- 栈帧
- What is heap and stack?
- 【开源项目】花密(Flower Password)VB版之区分代号自动匹配输入模块
- 最近的一些感悟