2017-06-06 73 views
0

我有一个每天都需要Mongo DB备份的shell脚本。它按预期工作。现在我需要删除超过2周的备份。目前的命名规则是否可以实现?任何人都可以点亮一下吗?我是相当新的shell脚本用于删除早于2周的备份的Shell脚本

#!/bin/sh 
DIR=`date +%m%d%y` 
DEST=/dbBackups/$DIR 
mkdir $DEST 
mongodump --authenticationDatabase admin -h 127.0.0.1 -d pipe -u <username> -p <password> 
+0

可能重复:https://stackoverflow.com/questions/13868821/ shell-script-to-delete-directories-older-than-n-days – Vardit

+0

在这种情况下,这会为我找到/ dbBackups/* -type d -ctime +14 -exec rm -rf {} \; –

回答

0

最后用下面的脚本得到它

#!/bin/sh 
DIR=`date +%m%d%y` 
DEST=/dbBackups/$DIR 
mkdir $DEST 
mongodump --authenticationDatabase admin -h 127.0.0.1 -d pipe -u <username> -p <password> 
find /dbBackups/* -type d -ctime +14 -exec rm -rf {} + 

由于Shell script to delete directories older than n days

+1

使用GNU查找,运行'-exec rm -rf {} +'会更快,因为它不会为每个文件产生一个单独的进程。 –

+0

当然应该更新 –