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)初始化-- --在此 ...
随机推荐
- C#模拟浏览器发get,post请求
调用: JArray ja = (JArray)JsonConvert.DeserializeObject("["+GetDataPost()+"]"); Re ...
- (三) 一起学 Unix 环境高级编程 (APUE) 之 文件和目录
. . . . . 目录 (一) 一起学 Unix 环境高级编程 (APUE) 之 标准IO (二) 一起学 Unix 环境高级编程 (APUE) 之 文件 IO (三) 一起学 Unix 环境高级编 ...
- ContentProvider 增删改查通讯录
一.通讯录应用介绍 通讯录应用是Android自带的应用程序,我们看到此应用的时候,可能只认为这是一个应用,用数据库存储数据,但是实际上不是这样的. 通讯录是ContentProvider的应用,通讯 ...
- Java集合类之ArrayList
学习Java的集合类 (1)成员变量以及初始化 private static final int DEFAULT_CAPACITY = 10; private static final Object[ ...
- mormot json操作
使用JSon只需要引用一个文件synCommons. procedure TForm1.Button1Click(Sender: TObject);var jo: Variant; i: Int64; ...
- Windows服务的手动添加和删除方法
Windows服务的手动添加和删除方法 服务,是指执行指定系统功能的程序.例程或进程,以便支持其他程序,尤其是低层(接近硬件)程序.其实,服务就是一种特殊的应用程序,它从服务启动开始就一直处于运行状态 ...
- Fiddler怎么对IPhone手机的数据进行抓包分析
http://www.cr173.com/html/20064_1.html Fiddler绝对称得上是"抓包神器", Fiddler不但能截获各种浏览器发出的HTTP请求, 也可 ...
- ycsb使用方法
ycsb本身相当于客户端,不断向服务端发送请求,同时记录下这些请求耗费的时间. 那么,必须要有一个服务端在某个端口监听. ycsb可以在workload里写入服务端的ip和端口,也可以在命令行里写上. ...
- StringGrid 实例4 本例功能: 1、给每个单元格赋值 2、调整当前单元格位置:上下左右;
实例4 本例功能:1.给每个单元格赋值 2.调整当前单元格位置:上下左右: 运行效果图:
- js注意
使用集成函数注意返回值,有的不会改变现有对象,仅返回对象的副本,而有的会改变现有对象并返回该对象. 变量名不能和函数名相同,否则会被覆盖. 查询时看清楚返回的是单个元素还是集合,如果是使用返回集合的方 ...