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)初始化-- --在此 ...
随机推荐
- Swift3.0基础语法学习<三>
枚举和结构体: // // ViewController3.swift // SwiftBasicDemo // // Created by 思 彭 on 16/11/16. // Copyright ...
- android笔记:ViewPager实现界面的滑动
最近在学习ViewPager实现界面的滑动,拜读了郭神的博客文章,并抽取归纳了自己对ViewPager的理解. ViewPager实现界面滑动的步骤如下: 1.在xml布局内加入控件android.s ...
- iOS9支付完成无法获取回调
- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<NSString *,id ...
- [转] 关于linux下通过shell命令(自动)修改用户密码
关于linux下通过shell命令(自动)修改用户密码 2012-04-23 18:47:39 分类: 原文地址:关于linux下(自动)修改用户密码 作者:ubuntuer 本文章总结了如何手动.自 ...
- TNetHTTPClient演示
TNetHTTPClient演示 TNetHTTPClient是DELPHI新增加的异步HTTP通信控件(区别于INDY的阻塞控件). unit Unit1; interface uses Winap ...
- Google搜索质量评估员指南
Google: 此文档是我们(谷歌)的一份搜索质量评估员指南,可作为搜索质量评估员的培训材料.其中主要介绍了一类名为“网址评分”的评分任务,此类任务要求评估员查看搜索查询与可能返回的相应结果.他们需要 ...
- c#开发Mongo笔记第二篇
写到第二篇不得不说是我之前犯了一个小错误,其实实现子表存储也是很简单的事,先说我想实现什么样的效果吧 就是用户表里有个成绩字段,成绩字段是个子表 其实实现这个功能也很简单,用面向对象的思想很好理解,子 ...
- js抽奖
http://www.aichengxu.com/view/64369 <!Doctype html><html><head><meta http-equiv ...
- 组合(composition)与继承(inheritance)
c++中一个重要的特点就是代码的重用,为了代码重用,有两个非常重要的手段,一个是继承,一个是组合 上面两种类的关系就分别是继承和组合.下面我们看一下代码示例: #ifndef USEFUL_H #de ...
- UIMenuController 实现长按显示自定义菜单功能
这段时间在集成使用融云聊天功能的时候,想自定义消息cell的长按的菜单,在网上查了查,这是根据 UIMenuController 实现的.具体代码如下,我是使用一个btn实现的 首先创建一个btn,并 ...