服务器自动更新SVN

一、新建一个sh文件

/data/sh/update.sh

#!/bin/bash

cd /home/wwwroot/www.xxx.com

export LC_CTYPE=en_US.UTF-8

echo -e "\n"
echo [$(date "+%Y-%m-%d %H:%M:%S")]

svn up --username 你的用户名 --password 你的密码 --no-auth-cache --non-interactive /home/wwwroot/www.xxx.com

update.sh文件赋予执行权限(重点是给www用户)

chmod 777 /data/sh/update.sh

二、创建crontab任务

执行命令:crontab -e -u www
新增如下任务:

*/1 * * * * /data/sh/update.sh >> /data/log/svn-update_$(date +\%Y\%m\%d).log 2>&1 &

*/1 * * * * (sleep 10; /data/sh/update.sh >> /data/log/svn-update_$(date +\%Y\%m\%d).log 2>&1 &)

*/1 * * * * (sleep 20; /data/sh/update.sh >> /data/log/svn-update_$(date +\%Y\%m\%d).log 2>&1 &)

*/1 * * * * (sleep 30; /data/sh/update.sh >> /data/log/svn-update_$(date +\%Y\%m\%d).log 2>&1 &)

*/1 * * * * (sleep 40; /data/sh/update.sh >> /data/log/svn-update_$(date +\%Y\%m\%d).log 2>&1 &)

*/1 * * * * (sleep 50; /data/sh/update.sh >> /data/log/svn-update_$(date +\%Y\%m\%d).log 2>&1 &)

这命令的意思是每隔10秒钟执行一次更新命令,具体的更新频率,可依照自己的需求来更改。
为确保命令成功执行,可重启一下crond服务

/sbin/service crond restart

Done !!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。