atitit.提升备份文件复制速度(3) ----建立同步删除脚本
atitit.提升备份文件复制速度(3) ----建立同步删除脚本
4. Npp replace gene del from lst 1
1. 建立同步删除脚本两个方法..
2. 1从回收站info2文件...
Copy info2
{String s="G:\\RECYCLER\\S-1-5-21-602162358-1284227242-682003330-500\\info2";
core.copy(s, "c:\\info2.txt");
geneDelBatShell >>gene del.bat
3. 清理结束在后snap比较
trave2sqlUtil>>snap.sql
比较 SELECT CONCAT('del',' ','"',file,'"') as t FROM `foldercount` where file not in (select file from foldercountclraftr )
导出lst.txt.bat
作者:: 老哇的爪子 Attilax 艾龙, EMAIL:1466519819@qq.com
转载请注明来源: http://blog.csdn.net/attilax
4. Npp replace gene del from lst
\r\n >>>"\r\n del "
5. Db ddl
CREATE TABLE `foldercount` (
`file` varchar(255) DEFAULT NULL,
`size` int(11) DEFAULT NULL,
`id` int(11) NOT NULL AUTO_INCREMENT,
`extname` varchar(255) DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `i_f` (`file`)
) ENGINE=InnoDB AUTO_INCREMENT=39702 DEFAULT CHARSET=utf8;
CREATE TABLE `foldercountclraftr` (
`file` varchar(255) DEFAULT NULL,
`size` int(11) DEFAULT NULL,
`id` int(11) NOT NULL AUTO_INCREMENT,
`extname` varchar(255) DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `i_f2` (`file`)
) ENGINE=InnoDB AUTO_INCREMENT=51753 DEFAULT CHARSET=utf8;
6. Code
geneDelBatShell
public class geneDelBatShell {
/**
@author attilax 老哇的爪子
\t@since Aug 3, 2014 4:00:19 AM$
* @param args
* @throws IOException
*/@SuppressWarnings("all")
public static void main(String[] args) throws IOException {
// attilax 老哇的爪子 4:00:19 AM Aug 3, 2014
final filex fc = new filex("c:\\infoDelBat.bat");
String s = "c:\\info2.txt";
filex.read_HP(s, "gbk", new Closure() {
@Override
public Object execute(Object arg0) throws Exception {
// attilax 老哇的爪子 4:11:57 AM Aug 3, 2014
{
String line = arg0.toString();
List<String> li = strUtil
.find(regExpress.pathExpress, line);
for (String f : li) {
)continue;
String fname=filex.getExtName(f);
)continue;
System.out.println(f);
if(pathx.isFile(f))
fc.append_HP(f + "\r\n");
}
return null;
}
}
});
fc.close();
System.out.println("--f");
}
// attilax 老哇的爪
trave2sqlUtil
private static void trav() throws IOException {
final String fileName = "c:\\clraft.sql";
final CharSequence tab="folderCountClraftr";
final filex fc = new filex(fileName);
dirx.trave("G:\\ati\\doc", new Closure() {
@Override
public Object execute(Object arg0) throws Exception {
// attilax 老哇的爪子 3:46:39 AM Aug 2, 2014
{
String fname = arg0.toString();
String oriname=fname;
fname=fname.replace("'", "\\'");
File f = new File(fname);
String sql = "insert @t(file,size,extname)values('@f',@size,'@ext') "
.replace("@f", fname)
.replace("@size", String.valueOf(f.length()))
.replace("@ext", filex.getExtName(oriname))
.replace("@t",tab);
logger.info(sql);
sql = sql.replace("\\", "\\\\");
sql = sql.replace("\\\\'", "\\'");// Coldwine\\'s Blog - 博客园.htm restore to \'
fc.append_HP(sql + ";\r\n");
return null;
}
}
});
fc.close();
}
atitit.提升备份文件复制速度(3) ----建立同步删除脚本的更多相关文章
- atitit.提升备份文件复制速度(1) -----分析统计问题and解决方案
atitit.) -----分析统计问题and解决方案 1. 现在的情形 1 2. 硬盘信息 大概50mb/s, 50iops 1 3. 统计小的文件比率 2 4. 复制速度估计.. 2 5. 小文件 ...
- atitit.提升备份文件复制速度(4) ---数据挖掘 获取回收站文件列表
atitit.) ---数据挖掘 获取回收站文件列表 1. 放入回收站的原理and 1 2. info2文件文件结构 1 3. 获得文件列表2个法: 正则表达式or解析 1 4. 路径正则表达式[a- ...
- Atitit. 提升软件开发效率and 开发质量---java 实现dsl 4gl 的本质and 精髓 O725
Atitit. 提升软件开发效率and 开发质量---java 实现dsl 4gl 的本质and 精髓 O725 1. DSL主要分为三类:外部DSL.内部DSL,以及语言工作台. 1 2. DSL ...
- atitit.提升开发效率---mda 软件开发方式的革命
atitit.提升开发效率---mda 软件开发方式的革命 1. 软件开发方式的革命开发工具的抽象层次将再次提升 1 2. 应用框架和其实现相分离 2 3. 目前的问题模型和代码不同步 2 4. MD ...
- atitit.提升性能AppCache
atitit.提升性能AppCache 1.1. 起源1 2. 离线存储2 3. AppCache2 3.1. Appcache事件点如图2 3.2. Manifest文件4 3.3. 自动化工具4 ...
- 提升RabbitMQ消费速度的一些实践
RabbitMQ是一个开源的消息中间件,自带管理界面友好.开发语言支持广泛.没有对其它中间件的依赖,而且社区非常活跃,特别适合中小型企业拿来就用.这篇文章主要探讨提升RabbitMQ消费速度的一些方法 ...
- Atitit. 提升存储过程与编程语言的可读性解决方案v3 qc25.docx
Atitit. 提升存储过程与编程语言的可读性解决方案v3 qc25.docx 1. 大原则:分解+命名1 1.1. 命名规范1 1.2. 分层.DI和AOP是继OO1 1.3. 运算符可读性一般要比 ...
- Atitit.提升 升级类库框架后的api代码兼容性设计指南
Atitit.提升 升级类库框架后的api代码兼容性设计指南 1. 增加api直接增加,版本号在注释上面增加1 2. 废弃api,使用主见@dep1 3. 修改api,1 4. 修改依赖import, ...
- atitit.提升开发效率---使用服务器控件生命周期 asp.net 11个阶段 java jsf 的6个阶段比较
atitit.提升开发效率---使用服务器控件生命周期 asp.net 11个阶段 java jsf 的6个阶段比较 如下列举了服务器控件生命周期所要经历的11个阶段. (1)初始化-- --在此 ...
随机推荐
- MATLAB - 图像基本操作
1.读入一幅图像 I = imread('lena.jpg');%给出图片路径即可,I是一个三维矩阵 J = rgb2gray(I); figure, imshow(I), figure, imsho ...
- java多线程学习-同步(synchronized)
(示例都是网上视频的) 假如两个线程同时调用一个方法输出字符串 public class SynchronizedTest extends Thread { public static void ma ...
- css2选择器
CSS1&2元素选择器 选择符 类型 版本 简介 * 通配选择符 CSS2 所有元素对象. E 类型(HTML)选择符 CSS1 以文档语言对象类型作为选择符. E#myid id选择符 ...
- 我发现调用boostrap的弹框
在引用了boostrap.js和boostrap.css之后 本来boostrap是基于jQuery的.但是我们的项目里没有用jQuery,而是用的zepto. 调用boostrap的弹框有两种方式: ...
- apache.http.client.HttpClient
前言 HTTP 协议可能是现在 Internet 上使用得最多.最重要的协议了,越来越多的 Java 应用程序需要直接通过 HTTP 协议来访问网络资源.虽然在 JDK 的 java net包中已经提 ...
- Daily Scrum 12.1
今日完成任务: 完成了对源代码结构的修改,删除冗余等:和其他小组讨论了关于整合的问题,向其他小组介绍自己小组使用的数据库等. 明日任务: 晏旭瑞 初步完成文档上传下载 孙思权 深入了解数据库中每个表, ...
- sql行列转换
首先我们建立一张表,名为scoreInfo,各个字段的设计如下图,分别是name,course,score,表示姓名,成绩与分数,如图所示.
- input 标签实现带提示文字的输入框
方法一:html5配合css3实现带提示文字的输入框(摆脱js): webkit特有的一个css,可以控制里面的文字样式,配合css3的动画效果和伪类,我们就可以很容易做出一个带动画的输入框,在系统登 ...
- mysql数据库查询pdo的用法
最早的php对mysql数据库查询是mysql和mysqli方法,后来php的新版本进一步封住了该方法,于是又pdo,抛开php框架,使用pdo查询数据,使用也是相当简便 <?php ini_s ...
- “ExternalException (0x80004005): GDI+ 中发生一般性错误”的问题 .
原因一般是写入文件时,.net没有该目录的写入权限. 解决方案:增加iis(对aspx而言)对该目录的写入权限.