收起左侧

批量解压缩及重命名docker镜像

13
回复
1542
查看
[ 复制链接 ]

1

主题

4

回帖

0

牛值

江湖小虾

2026-1-30 12:56:21 显示全部楼层 阅读模式

FNOS 批量文件处理工具 v1.3.21

🚀 生产级批量文件处理工具 - 支持 Web UI、密码破解、多卷文件、智能解压与批量重命名

正式镜像: docker pull roninriddle/fnos-extractor:latest


✨ 核心特性

🔍 智能扫描

  • 递归扫描 - 支持扫描所有子目录或仅当前目录
  • 双模式扫描 - 支持仅扫描压缩包,或扫描目录下所有文件
  • 自动检测 - 智能判断压缩包加密状态(7z/ZIP/RAR)
  • 高性能缓存 - 使用文件签名缓存,避免重复检测

📦 全格式支持

多卷压缩包:

  • .part1.7z / .part1.rar (分卷格式)
  • .001, .002, .003 (通用多卷)
  • .Z01, .Z02 (WinRAR标准)
  • .r00, .r01 (RAR经典)

标准格式: .7z, .rar, .zip

TAR系列: .tar, .tar.gz/.tgz, .tar.bz2/.tbz2, .tar.xz/.txz, .tar.zst

单独压缩: .gz, .bz2, .xz, .lzma, .zst

其他格式: .cab (Windows Cabinet), .iso (光盘镜像)

🔐 密码管理

  • 密码词典 - 支持自定义密码词典,每个密码5秒超时
  • 智能缓存 - 自动记忆成功密码,后续快速解压
  • 在线编辑 - Web UI 实时编辑密码词典

🎛️ 解压控制

  • 三种模式 - 当前文件夹 / 同名文件夹 / 指定目录
  • 智能并发 - 支持1-32个文件同时解压
  • 自动删除 - 可选解压成功后自动删除源文件
  • 流程控制 - 暂停/继续/停止操作

✏️ 批量重命名

  • 批量增加 - 支持在文件名前后统一追加内容
  • 批量替换 - 支持按文件名、完整文件名或扩展名执行替换

🌐 现代化 Web UI

  • 响应式设计 - 适配各种屏幕尺寸
  • 实时监控 - 显示进度、当前文件、完成数量
  • 调试模式 - 实时日志显示与下载

🚀 快速开始

Docker 运行(推荐)

docker pull roninriddle/fnos-extractor:latest
docker run -d \
  --name fnos-extractor \
  -p 5000:5000 \
  -v /path/to/archives:/vol1/1000/Temp \
  roninriddle/fnos-extractor:latest

# 访问 http://localhost:5000

Docker Compose

git clone https://github.com/roninriddle/fnos-extractor.git
cd fnos-extractor
docker compose up -d

仓库自带的 docker-compose.yml 默认使用正式版 latest 镜像;如需体验测试版,可将镜像改为 roninriddle/fnos-extractor:test

本地开发

pip install -r requirements.txt
# Ubuntu/Debian
sudo apt-get install p7zip-full unrar-free unzip
# macOS
brew install p7zip unrar unzip

python app.py

📖 使用指南

基本流程

  1. 扫描目录 - 输入路径,选择是否递归扫描
  2. 选择文件 - 单选/全选/反选
  3. 配置模式 - 选择解压位置和并发数
  4. 开始解压 - 实时监控进度

密码管理

  • 优先级 - 缓存密码 > 词典密码
  • 编辑 - 点击设置 → 密码管理 → 在线编辑
  • 格式 - 每行一个密码,UTF-8编码

API 端点

  • GET /api/health - 健康检查
  • GET /api/metrics - 系统指标
  • POST /api/scan - 扫描目录
  • POST /api/extract - 开始解压
  • GET /api/status - 解压状态

🔧 技术栈

  • 后端: Flask 3.1.2 + Python 3.11
  • 前端: HTML5 + CSS3 + JavaScript
  • 容器: Docker (多架构支持: amd64/arm64)
  • 解压工具: 7z, unrar, unzip, tar, xz, zstd

🔐 安全说明

  • ✅ 密码仅在内存处理,不上传
  • ✅ 成功密码缓存到本地JSON
  • ⚠️ 不要在词典中存放敏感密码
  • ⚠️ 自动删除功能会永久删除文件
  • ✅ 建议在测试环境验证后使用

📦 版本信息

当前版本: v1.3.12-test

本次更新:

  • ✏️ 新增批量重命名功能,支持增加、替换
  • 🔎 扫描功能升级,支持扫描目录下所有文件并对选中文件统一重命名
  • 🧩 保留原有压缩包扫描、加密检测、多卷识别和批量解压能力
  • 🧪 当前版本为测试标签,推荐先在测试环境验证后再投入正式使用

🤝 贡献

GitHub: https://github.com/roninriddle/fnos-extractor
Docker Hub: https://hub.docker.com/r/roninriddle/fnos-extractor
许可: MIT License

欢迎提交 Issue 和 Pull Request!


Last Updated: 2026-04-03 | Version: 1.3.21

收藏
送赞 3
分享

1

主题

38

回帖

0

牛值

江湖小虾

2026-1-30 16:00:53 显示全部楼层
compose呢
# 1. 克隆仓库 git clone https://github.com/roninriddle/fnos-extractor.git cd fnos-extractor # 2. 编辑 docker-compose.yml(根据需要调整卷挂载) vim docker-compose.yml # 3. 启动容器 docker-compose up  详情 回复
2026-1-30 16:19

1

主题

1

回帖

0

牛值

江湖小虾

2026-1-31 21:51:55 显示全部楼层

分卷的无法解压

1.2.1试过了么? 什么文件,最好发一下日志。  详情 回复
2026-2-1 21:57

1

主题

4

回帖

0

牛值

江湖小虾

2026-2-1 21:57:39 楼主 显示全部楼层

1.2.1试过了么?
什么文件,最好发一下日志。

1

主题

23

回帖

0

牛值

江湖小虾

2026-2-2 09:30:08 显示全部楼层

试过了,成功部署,但无法正常解压文件,无密码的,有密码的,单个的多个的文件的。怕是压缩文件的问题,然后自己创建几个压缩文件,都解压失败

1.2.5已经更新对arm设备支持。  详情 回复
2026-2-2 22:34
我本地这里测试成功了,我用的飞牛evo。 你有日志么?什么设备  详情 回复
2026-2-2 16:21

1

主题

4

回帖

0

牛值

江湖小虾

2026-2-2 22:34:28 楼主 显示全部楼层
yak90 发表于 2026-2-2 09:30
试过了,成功部署,但无法正常解压文件,无密码的,有密码的,单个的多个的文件的。怕是压缩文件的问题,然 ...

1.2.5已经更新对arm设备支持。

0

主题

1

回帖

0

牛值

江湖小虾

2026-2-4 23:29:04 显示全部楼层

没有密码的也会显示有密码,然后解压失败,有的解压失败但文件实际解压出来了,有的没解压出来

j1900

1

主题

23

回帖

0

牛值

江湖小虾

2026-2-6 15:42:29 显示全部楼层
x86设备,成功布置最新版,启用后,显示文件目录,解压文件,文件是无密码文件,同时我把密码本的密码清空保存,然后开始解压,显示失败。失败原因是否我把存储位置和装载位置设置同一个路径导致?下面是日志


2026-02-06 07:29:18,384 - __main__ - INFO - 已加载 2 个密码
2026-02-06 07:29:30,120 - __main__ - INFO - 开始扫描目录: /vol1/1000/实验 (包含子目录: True)
2026-02-06 07:29:30,121 - __main__ - INFO - 扫描完成,发现 7 个压缩包 (子目录: True)
2026-02-06 07:29:30,124 - __main__ - INFO - 发现 0 个多卷文件组,7 个单文件
2026-02-06 07:29:40,196 - __main__ - WARNING - 检测加密状态超时: /vol1/1000/实验/AAA.rar
2026-02-06 07:29:50,209 - __main__ - WARNING - 检测加密状态超时: /vol1/1000/实验/BBB.rar
2026-02-06 07:31:19,072 - __main__ - INFO - 启动解压: 2 个文件,extract_mode=to_same_name, 自动删除=False
2026-02-06 07:31:19,098 - __main__ - WARNING - 密码错误 [/vol1/1000/实验/123.rar] 密码: pwd_a
2026-02-06 07:31:19,099 - __main__ - WARNING - 密码错误 [/vol1/1000/实验/456.rar] 密码: pwd_a
2026-02-06 07:31:19,109 - __main__ - WARNING - 密码错误 [/vol1/1000/实验/123.rar] 密码: pwd_b
2026-02-06 07:31:19,109 - __main__ - ERROR - 所有密码都失败了 /vol1/1000/实验/123.rar (尝试次数: 2, 总耗时: 0s)
2026-02-06 07:31:19,110 - __main__ - ERROR - 密码解压失败 /vol1/1000/实验/123.rar: 所有密码都失败了 (尝试 2 个密码,耗时 0s)
2026-02-06 07:31:19,111 - __main__ - WARNING - 密码错误 [/vol1/1000/实验/456.rar] 密码: pwd_b
2026-02-06 07:31:19,111 - __main__ - ERROR - 所有密码都失败了 /vol1/1000/实验/456.rar (尝试次数: 2, 总耗时: 0s)
2026-02-06 07:31:19,111 - __main__ - ERROR - 密码解压失败 /vol1/1000/实验/456.rar: 所有密码都失败了 (尝试 2 个密码,耗时 0s)
更新版本号1.2.7  详情 回复
2026-2-8 21:21

1

主题

4

回帖

0

牛值

江湖小虾

2026-2-8 21:21:13 楼主 显示全部楼层
yak90 发表于 2026-2-6 15:42
x86设备,成功布置最新版,启用后,显示文件目录,解压文件,文件是无密码文件,同时我把密码本的密码清空 ...

更新版本号1.2.7

1

主题

23

回帖

0

牛值

江湖小虾

2026-2-19 15:19:37 显示全部楼层

可以用了,是我设置错了,我一直把解压后的位置选择在,[X ] 解压到同名文件夹。今天鬼使神差选在[X ] 解压到当前文件夹,居然可以正常使用了

解压设置

[X ] 解压到当前文件夹 [ ] 解压到同名文件夹 [X] 解压到指定目录

0

主题

1

回帖

0

牛值

江湖小虾

2026-2-28 22:50:19 显示全部楼层

V1.2.95

2026-02-28 14:49:43,244 - __main__ - ERROR - 目录不存在: /vol1/1000/download

目录不存在是为什么?

大概率是文件夹权限问题  详情 回复
2026-3-26 23:06

1

主题

4

回帖

0

牛值

江湖小虾

2026-3-26 23:06:11 楼主 显示全部楼层
soulless 发表于 2026-2-28 22:50
V1.2.95
2026-02-28 14:49:43,244 - __main__ - ERROR - 目录不存在: /vol1/1000/download
目录不存在是为 ...

大概率是文件夹权限问题
同样的现象,权限问题怎么解决?  详情 回复
2026-4-25 21:22

0

主题

1

回帖

0

牛值

江湖小虾

2026-4-25 21:22:47 显示全部楼层
roninzh 发表于 2026-3-26 23:06
大概率是文件夹权限问题

同样的现象,权限问题怎么解决?

0

主题

3

回帖

0

牛值

江湖小虾

希望增加目录递归选择功能,GitHub也提了

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则