【Linux环境】简单Shell脚本实现定时备份⽂件、压缩、删除超时⽂件操作
(showDo。。。
Shell脚本备份数据的博⽂不少,这个应该算是⽐较简单的,没有复杂逻辑,分享⼀下。
1.备份脚本
Shell脚本的每⾏命令⼀定要在测试环境进⾏测试,否则会有意想不到的惊吓 ,以下是showDocBackUp.sh的内容。
这⾥是纯净版本,修改地址就可以使⽤:
#!/bin/bash
cp /showdoc_data/html/Sqlite/showdoc.db.php /home/showDocFile/tmp/showdoc.db.php
cp -r /showdoc_data/html/Public/Uploads/* /home/showDocFile/tmp/
tar -zcPvf /home/showDocFile/BackUpFile-$(date +%Y%m%d). /home/showDocFile/tmp/*
rm -rf /home/showDocFile/tmp/*
find /home/showDocFile -mtime +30 -name "BackUpFile*." -exec rm -rf {}\;
这⾥是带解析的版本:
#!/bin/bash
# 这⾏是copy⽂件,当然也可以对复制的⽂件进⾏重命名操作,多个⽂件进⾏备份可以写多⾏。
cp /showdoc_data/html/Sqlite/showdoc.db.php /home/showDocFile/tmp/showdoc.db.php
# 这⾏是copy⽂件夹⽂件。
cp -r /showdoc_data/html/Public/Uploads/* /home/showDocFile/tmp/
# 压缩⽂件夹下的所有⽂件并添加⽇期后缀。
tar -zcPvf /home/showDocFile/BackUpFile-$(date +%Y%m%d). /home/showDocFile/tmp/*
# 压缩后删除临时⽂件。
rm -rf /home/showDocFile/tmp/*
# 查30天前的⽂件,并删除。
find /home/showDocFile -mtime +30 -name "BackUpFile*." -exec rm -rf {}\;
2.定时任务
给可执⾏⽂件赋予权限的操作不要忘记。
# 给showDocBackUp.sh⽂件赋予可执⾏权限
chmod -R 777 showDocBackUp.sh
Linux的 cron 表达式跟Java的 cron 表达式不同,这⾥要注意。
# m h dom mon dow command
# 分时⽇⽉周要执⾏的命令
# 编辑定时任务列表
crontab -e
# 添加以下⽂本(每天00:00执⾏showDocBackUp.sh脚本)
00 00 * * * /home/showDocFile/shell/showDocBackUp.sh
shell最简单脚本# 重启 cron 服务
sudo service crond restart
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论