pyFileSearcher是由Python搜索引擎设计的一款批量搜索软件,能够快速的搜索指定目录中的文件,可以设置名称、关键字和文件格式等条件,搜索结果可保存为CSV表格格式。目前仅开放了sqlite数据库搜索功能和本地文件搜索功能。
软件功能
1、按名称、大小、文件类型搜索。按路径的一部分进行搜索。搜索索引中列出的不早于N天的文件
2、保存已删除文件的信息,对它们的搜索和对普通文件的搜索一样
3、能够保存搜索设置供将来使用
4、能够以csv格式保存搜索结果
5、在搜索结果中突出显示不存在的(已删除的)文件
6、记录访问错误--你将知道哪些文件夹由于某种原因没有被索引到
7、支持Windows中的长路径(>256个字符)。
pyFileSearcher使用说明
1、该程序在你的硬盘上运行,并保存关于文件的最低限度的必要信息:大小、创建时间、修改时间和文件的第一次索引时间(便于在不看属性的情况下寻找新文件)。为了存储这些信息,你可以使用sqlite数据库(每个你想索引的目标目录都有一个),如果你想索引几十万和几百万个文件,也可以使用MySQL数据库。在后一种情况下,你可以只使用一个数据库,但指定几个目标目录。在这两种情况下,每个目标目录都是与其他目录并行索引的。
2、在你设置了简单的索引参数(目标目录,以及在使用sqlite的情况下,扩展名的白名单或黑名单)之后,你可以用"--scan "参数运行程序,自动开始索引,之后程序将被关闭。使用这个键可以通过调度程序运行。
3、在扫描过程中,在工作("data")目录中会创建一个pid文件。它的存在会阻止启动扫描的过程,如果程序崩溃了--请手动删除它。
测试说明
该程序在一个有大约2000万个文件的文件服务器上进行了测试。扫描时间 - 约5小时。最大线程中的文件:~7000000
MySQL的非默认参数(对于debian stretch)。
innodb_buffer_pool_size = 3000M
innodb_log_file_size = 128M
innodb_log_buffer_size = 4M
innodb_flush_method = O_DIRECT
更新日志
在1.1.1中
修复:将pid进程保存到pid文件中。额外的验证减少了在pid文件未被删除时停止扫描执行的机会。
其他:默认 "sqlTransactionLimit "从20000改为1000
∨ 展开