Skip to content

Bili345679/file_tools

Repository files navigation

文件管理系统 v_1_2

目标是保证文件的完整性

文件校验系统(对大量文件校验时,可能会在读取文件目录时花费多倍时间,下一版将对此优化)

用于校验文件完整性

目前只做了单个多种校验类型同时运行,未作多文件同时校验,待升级

默认校验格式是MD5,如果想使用其他校验格式,请到new_file_check_thread.py文件中把
"   thread_check_dict["md5"]        = md5_class()
    thread_check_dict["sha1"]       = sha1_class()
    thread_check_dict["sha224"]     = sha224_class()
    thread_check_dict["sha256"]     = sha256_class()
    thread_check_dict["sha384"]     = sha384_class()
    thread_check_dict["sha512"]     = sha512_class()
    thread_check_dict["blake2b"]    = blake2b_class()
    thread_check_dict["blake2s"]    = blake2s_class()
    thread_check_dict["sha3_224"]   = sha3_224_class()
    thread_check_dict["sha3_256"]   = sha3_256_class()
    thread_check_dict["sha3_384"]   = sha3_384_class()
    thread_check_dict["sha3_512"]   = sha3_512_class()"
中对应的校验方式的注释取消掉,初始化校验文件和进行校验需要保证校验格式一致,之后的版本 可能 会添加自动根据最初的校验文件自动选择校验格式

运行"运行文件校验.bat"或者使用"python file_check.py"运行文件校验系统
对某个目录第一次使用,会在目标目录根目录下,建立"目录名_时间戳.ckf345679"的文件,用于保存最初的校验信息
之后对该目录使用,会自动进入校验模式

校验结束后,如果有文件变动,将会print变动的文件信息你可以选择保存(默认不保存)这些变动信息到"目录名_时间戳.ckf345679"文件中
校验结束后,无论是否有文件变动,你都可以选择将新的校验信息保存下来(默认不保存),这并不会覆盖旧的校验文件,因为它们的时间戳是不同的
一切结束后,如果你觉得不需要继续留着校验信息了,你可以选择删除所有的文件信息和文件变动信息

文件安全复制(还没开始做)

!!!仅用于文件命名不重要的文件,因为会对不同的同名文件进行重命名!!!

!!!推荐的使用场景是自己收集的图库之类的地方(至少我是准备这么用的)!!!

!!!绝对禁止在游戏存档之类的地方使用,一定会导致无法正确的读取游戏存档!!!

用于将文件从文件夹(A)复制到文件夹(B)里

为什么不用windows自带的复制?因为如果出现同名文件,需要进行选择

快速模式中:

  当遇到同名文件,将会比对它们:
    如果是相同则不复制文件夹(A)中的文件,保留文件夹(B)中的文件
    如果文件校验结果不相同,将会复制到文件夹(B)并对文件重命名(原名_时间戳)

体积对比模式中:

  将会在文件从文件夹(A)复制到文件夹(B)中时,查看文件夹(B)中是否有体积相同文件,如果有:
    查看这两个文件是否相同,如果相同,不复制文件
  如果不相同:
    将文件从文件夹(A)中复制到文件夹(B)中,并重命名为(原名_时间戳)

(快速模式相对较快,但是可能出现相同文件,如果文件夹(A)与(B)中本就存在文件名不相同,但是相同的文件,将会在文件夹(B)中存在这两个文件,从而增加重复文件)

(体积对比模式中,将花费较长的时间,尤其是文件较多时,但是可以避免出现相同文件占用不要必要的空间)

当复制完所有文件后,你可以选择清空文件夹(A)中的所有文件

About

暂定用于校验文件和复制文件

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published