杨新春

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

一. 首先安装如下软件
# yum -y install expect rsync

二. 其次创建编写脚本 rsync_expect.exp 并修改为可执行文件
# vim rsync_expect.exp
#!/usr/bin/expect
set timeout 3000
spawn rsync -azvP --delete /rsyncmaster/ root@ip_address:/rsyncslave/
expect "password:"
send "password\r"
expect eof
exit
# chmod 744 rsync_expect.exp

三. 最后编辑crontab 并创建日志文件
# crontab -e
*/1 * * * * /usr/bin/expect /rsynctest/rsync_expect.exp >> /rsynctest/rsync_expect.log 2>&1


备注:
-> expect 程序对话与互动程序
-> #!/usr/bin/expect 脚本用expect程序执行
-> set timeout 3000 超时
-> spawn 启动新的进程
-> expect expect 就是 expect的内部命令,从进程接收字符串
-> send 向进程发送字符串
-> \r 回车符
-> eof 结束
-> exit 退出
-> chmod 744 可执行
-> crontab -e 编辑任务
-> * * * * * Program
第一列:分
第二列:小
第三列:日
第四列:月
第五列:周
第六列:需要执行的命令或软件
“*”表示取值范围内的数字
“/”表示“每” “*/1”第一个每1分钟
“-”表示从某个数字到某个数字
“,”分开几个离散的数字
->“>>” 重定向追加
-> 2>&1 指将标准信息输出路径指定为错误信息输出路径(简单的说对的和异常信息都录入)

posted on 2018-09-28 14:17  杨新春  阅读(229)  评论(0编辑  收藏  举报