今天公司要求我把服务器上的备份文件拷到内部服务器上,并且只要最新的,好吧,运维人员的理想目标是什么,就是能够让电脑做的事,决不自己来做.
系统:centos 5.9
环境:备份文件在/root/bak下,当然我是虚拟机上进行的测试
1.备份文件环境图
2.shell脚本内容:
代码如下 | 复制代码 |
location="/root/bak/" find $location -type f -mtime +1|xargs rm -f |
运行脚本后的图
好了,可以看到脚本把今天以外的备份都删除了,如果你不想删除的话,那就改成下面的脚本:
代码如下 | 复制代码 |
|
好了,就这样吧,上面我们需要天天运行一下,后来看到朋友写了一个自动删除前一天备份文件实例
脚本内容backuplislog.sh:
代码如下 | 复制代码 |
#!/bin/bash FTPHOST="1.1.1.7" USERNAME="lislog" PASSWORD="lislog" #取前一天年月日 y=`date --date='1 days ago' "+%Y"` m=`date --date='1 days ago' "+%m"` d=`date --date='1 days ago' "+%d"` #取当天年月日 yt=`date "+%Y"` mt=`date "+%m"` dt=`date "+%d"` #以当天日期为压缩文件名 y1=`date "+%Y"` m1=`date "+%m"` d1=`date "+%d"` #文件名信息 SRCFILE="lis42.log.$y-$m-$d* lis42.log.$yt-$mt-$dt* lis42.log" DESFILE="lis42_$y1-$m1-$d1.zip" #需要备份文件的目录 FILEPATH="/home/lislog" # FTP Server备份目录 # BACKUPDIR="lislog" #压缩处理 cd $FILEPATH zip $DESFILE $SRCFILE #登入FTP Server并传送档案 ftp -v -n $FTPHOST << END user $USERNAME $PASSWORD binary put $DESFILE bye END #删除临时压缩文件 cd $FILEPATH rm -f $DESFILE #end |
最后扔到cron里就ok了,然后用的时候去拿就可以了
代码如下 | 复制代码 |
# crontab -l |
结果查看:
代码如下 | 复制代码 |
#ll /home/lislog/ -rw-r--r-- 1 itadmin dba 240100295 06-08 06:31 lis42_2012-06-08.zip |
经测试追踪发现,已经稳定执行。
我的博物馆故事 官方安卓版v1.61.2
我的博物馆故事是一款以消除为主题的经营养成类手游,在这里玩家
专业模拟飞行10 手机版v12.2.4
专业模拟飞行10安卓版是一款飞行休闲手游,顶尖的物理飞行引擎
动物起义战斗模拟器二琳同款 最新版v4.1.1
动物起义战斗模拟器是一个非常有趣的模拟类游戏,玩家可以召唤各
迷你世界七周年 安卓手机版v1.43.0
迷你世界7周年是一款由《迷你世界》官方推出的庆祝特别版本,在
劫后公司无限资源版 v1.0.5.1
劫后公司内置菜单版是游戏的破解版本,在该版本中为玩家提供了内