linux利用shell脚本和cron实现定时备份、上传及垃圾日志清理(原创)
2013-10-07 20:18
821 查看
1、编辑detailAppBackup.sh输入:
2、执行 detailAppBackup.sh
如果你也和我一样懒,那么这时会出现乱码,因为你是在windows新建的文件
vi ./detailAppBackup.sh:set ff?你会看到fileformat=unix 或者 fileformat=dos用:set ff=unix把它强制为unix格式再次执行 ./detailAppBackup.sh 应该正常了
3、设置定时执行crontab -e在文件的最后一样 加上* * * * * /root/sh/detailAppBackup.sh为了测试,这里时间段设置为一分钟执行一次也许你会问设置定时器不是有两种方式吗?crontab -e ; vi /etc/crontab对,crontab -e是某个用户的周期计划任务;/etc/crontab是系统的周期任务/etc/crontab支持两种输入指令的方式,一种是直接以指令形式输入,一种则是以目录形式输入。
记得最后一定要加上换行符, 并重新加载配置文件service crond reload
如:
#!/bin/sh #Copyright(c) 2010-2011 luoch (luocheng.cn@luocheng.cn) #Backup the detail files and update, clear logs #Version 0.1.1 echo "=== Start deleting logs ===" rm -vf `find /opt/apache/htdocs/detail/app/log -name '*.log' -mtime +7 -print` > detailAppBackup.log echo "=== Success removed logs,delete log write in detailAppBackup.log ===" echo "=== Start deleting CVS ===" find /opt/apache/htdocs/detail/ -name "CVS" -exec rm -rf {} ; echo "=== Success deleting CVS ===" echo "=== Start backup ===" rm -vf `find /opt/data_bak/ -name 'detail*.tar.gz' -mtime +30 -print` > detailAppBackup.log ctime=$(date +%Y%m%d"_"%H%M%S) tar czvf /opt/data_bak/detail_$ctime.tar.gz -C /opt/apache/htdocs/ detail --exclude config.php echo "=== Success backup ===" echo "=== Start upload ===" cd /opt/data_bak ftp -n 192.168.0.1 << autoftp user ftpuser ftppwd binary put detail_$ctime.tar.gz quit autoftp echo "=== Success upload ==="将文件上传到 /root/sh
2、执行 detailAppBackup.sh
如果你也和我一样懒,那么这时会出现乱码,因为你是在windows新建的文件
vi ./detailAppBackup.sh:set ff?你会看到fileformat=unix 或者 fileformat=dos用:set ff=unix把它强制为unix格式再次执行 ./detailAppBackup.sh 应该正常了
3、设置定时执行crontab -e在文件的最后一样 加上* * * * * /root/sh/detailAppBackup.sh为了测试,这里时间段设置为一分钟执行一次也许你会问设置定时器不是有两种方式吗?crontab -e ; vi /etc/crontab对,crontab -e是某个用户的周期计划任务;/etc/crontab是系统的周期任务/etc/crontab支持两种输入指令的方式,一种是直接以指令形式输入,一种则是以目录形式输入。
记得最后一定要加上换行符, 并重新加载配置文件service crond reload
如:
SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root HOME=/ # run-parts 01 * * * * root run-parts /etc/cron.hourly 02 4 * * * root run-parts /etc/cron.daily 22 4 * * 0 root run-parts /etc/cron.weekly 42 4 1 * * root run-parts /etc/cron.monthly * * * * * root /root/sh/detailAppBackup.sh
相关文章推荐
- linux利用shell脚本和cron实现定时备份、上传及垃圾日志清理(原创)
- 关于linux定时任务与shell脚本——实现远程数据库备份
- linux服务器实现每天定时备份mysql数据库的shell脚本
- Linux下定时备份MySQL数据库的Shell脚本
- Linux下使用Shell脚本实现ftp的自动上传下载的代码小结
- Linux使用Shell脚本实现ftp的自动上传下载
- Linux下添加shell脚本使得nginx日志每天定时切割压缩
- linux 日志定时清理脚本
- Linux使用Shell脚本实现ftp的自动上传下载
- 服务自动拉起,定时日志清理,数据统计的shell脚本
- Shell脚本定时备份清除运行系统日志的代码
- 定时编译提交工具(shell脚本)以及linux cron的使用
- Linux使用Shell脚本实现ftp的自动上传下载
- 利用shell脚本,crontab,scp实现将一台服务器的目录备份到另一台服务器
- Linux使用Shell脚本实现ftp自动上传
- Linux使用Shell脚本实现ftp的自动上传下载
- Linux使用Shell脚本实现ftp的自动上传下载
- linux下利用shell脚本实现添加crontab任务
- CentOS中使用Shell脚本实现每天自动备份网站文件和数据库并上传到FTP中
- Linux主机shell脚本一步备份笔记至手机,并实现轮转