expect

在写一些shell脚本的时候,经常会遇到需要用户输入密码的交互情况。
例如在用rsync备份的时候,如果没有假设rsync服务器端,需要用到ssh+rsync备份,没有提供输入密码的选项。上网上查了一下,有个expct的交互程序。
expect也够复杂的,起码在我看来是这样。先找个可以输入密码的实例:见
http://www.blog.ccidnet.com/blog-htm-do-showone-uid-73559-itemid-238796-type-blog.html

#!/usr/bin/expect -f
#需要执行的rsync备份脚本
spawn /var/backup.sh
#等待出现 password:的提示,然后发送密码
expect "password:" { send "PASSWORD\n" }
#不知道是啥意思,没有这句还不行
expect ".*\@.*#"

backup.sh 只有一个rsync的命令:rsync -avz /var IP:/ 1>log.txt 2>&1
当然可以更复杂。
现在已经能满足我的备份需求了,够用就好!

请选择你看完该文章的感受:

不错 超赞 无聊 扯淡 不解 路过

随机文章:

弥河来水了
弥河来水了

坐上火车去拉萨
坐上火车去拉萨

农村新厕所
农村新厕所

宁夏吴忠分公司探索基站无动力降热排风系统初见成效
宁夏吴忠分公司探索基站无动力降热排风系统初见成效

垃圾短信
垃圾短信

Apache开启gzip
Apache开启gzip

Tags:

发表评论