...
代码块 | ||
---|---|---|
| ||
importPackage(Packages.java.lang);
importPackage(Packages.java.io);
importPackage(Packages.smartbi.repository);
function DateStr(){
var d = new Date();
var s = "";
s += d.getFullYear() + "_";
s += (d.getMonth() + 1) + "_";
s += d.getDate() + "_";
s += d.getHours() + "_";
s += d.getMinutes() + "_";
s += d.getSeconds() ;
return(s);
}
var maxCount = 30; //最多的备份数
var floderName = "repoBackup"; //备份目录
var name = "backup_"+DateStr()+".zip";
var floder = new File(floderName);
floder.mkdirs();
var backupFile = new File(floderName+"/"+name);
var fos = new FileOutputStream(backupFile);
var br = new BackupResources();
var denyTables = "['t_operationlog','t_operationlog_detail','t_session','t_ssreport_writebacklog','t_offline_publishpack','t_fileresource']";
br.backup(fos,denyTables);
fos.flush();
fos.close();
var allBackup = floder.listFiles();
var allCount = allBackup.length;
if (allCount > maxCount) {
//反正不多,冒泡算了
for (var i=0;i<allBackup.length;i++) {
for (var j=i+1;j<allBackup.length;j++) {
if (allBackup[i].lastModified() < allBackup[j].lastModified()) {
var temp = allBackup[i];
allBackup[i] = allBackup[j];
allBackup[j] = temp;
}
}
}
//删掉老的
for (var i = maxCount;i<allBackup.length;i++) {
allBackup[i].delete();
}
} |
...