Skip to content

XEKernel/USB-files-copy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 

Repository files navigation

U盘文件复制器

.NET Framework License

🎯 项目概述

U盘文件复制器 是一款智能化的U盘文件自动备份工具,能够在U盘插入电脑时自动复制指定类型的文件到本地目录。软件采用后台静默运行模式,支持高度自定义的文件过滤和复制策略,是数据备份、文件收集的理想工具。

🚀 核心功能详解

1. 自动监控与触发

  • 实时检测:通过WMI技术实时监控U盘插入事件
  • 自动启动:U盘插入后立即开始复制过程
  • 后台运行:支持隐藏窗口运行,不影响其他工作

2. 智能文件类型过滤

支持多种文件类型选择,可单独或组合选择:

文件类型 包含格式 说明
PPT文件 .ppt, .pptx PowerPoint演示文稿
文本文档 .doc, .docx, .txt Word文档和文本文件
表格文件 .xlsx, .xls Excel电子表格
PDF文件 .pdf PDF文档
图片文件 .jpg, .jpeg, .png, .gif, .bmp, .webp 常见图片格式
视频文件 .mp4, .avi, .mov, .mkv, .wmv, .flv 主流视频格式
音频文件 .mp3, .wma, .wav, .ape, .ogg, .flac, .aac 常见音频格式
压缩包 .zip, .rar, .7z, .tar, .gz, .bz2, .xz, .zst, .001, .iso, .wim, .cab 压缩和镜像文件
自定义扩展名 用户指定 支持任意文件扩展名
所有文件 . 复制U盘中的所有文件

3. 重复文件处理策略

提供四种处理重复文件的方案:

  • 跳过:如果目标文件已存在,则跳过不复制
  • 覆盖:删除已存在的文件,用新文件替换
  • 都保留:重命名新文件(如:文件 (1).docx)
  • 以新换旧:比较文件修改时间,只保留较新的版本

4. 文件大小限制

  • 启用限制:可设置最大文件大小(单位:MB)
  • 智能跳过:超过设定大小的文件自动跳过
  • 统计记录:跳过的文件会在日志中记录

5. 文件名关键词过滤

  • 关键词设置:输入要包含的关键词,用英文逗号分隔
  • 智能匹配:只复制文件名中包含指定关键词的文件
  • 忽略大小写:支持不区分大小写的匹配

6. 复制速度控制

  • 限时控制:可设置前X分钟进行速度限制
  • 多档速度:1MB/s、2MB/s、5MB/s、10MB/s可选
  • 减少卡顿:限制复制速度,避免影响系统性能

7. 反向复制功能

独特的双向复制机制:

  1. 正向复制:U盘 → 本地(默认模式)
  2. 反向复制:本地 → U盘(需触发条件)

触发方法:在U盘根目录创建名为 copy.stop 的空文件

8. 详细的日志系统

  • 实时日志:在界面中实时显示复制进度
  • 文件日志:自动保存详细日志到 CopyLog.txt
  • 目录树记录:为每个U盘生成目录结构文件
  • 统计信息:实时显示成功/失败文件数量

📖 完整使用教程

第一步:基础设置

  1. 启动程序

    • 运行 U盘文件复制器.exe
    • 程序启动后显示主配置界面
  2. 设置目标目录

    • 点击"浏览"按钮选择本地存储目录
    • 建议选择有足够空间的硬盘分区
    • 目录路径将作为所有复制文件的根目录

第二步:文件类型选择

根据需求选择要复制的文件类型:

  • 选择性复制:按需勾选特定文件类型
  • 全选模式:勾选"所有文件(.)"复制全部内容
  • 自定义类型:在文本框中输入扩展名(如:psd,ai,eps)

第三步:高级配置(可选)

  1. 重复文件设置

    • 根据文件管理需求选择处理策略
    • 推荐使用"以新换旧"或"都保留"
  2. 文件大小限制

    • 勾选"设置文件大小限制"
    • 输入最大文件大小(MB)
    • 超过大小的文件将被跳过
  3. 文件名过滤

    • 勾选"打开文件名过滤"
    • 输入关键词(如:报告,总结,2024)
    • 用英文逗号分隔多个关键词
  4. 速度控制

    • 勾选"启用前X分钟限速"
    • 设置限速时间(1-30分钟)
    • 选择限速速度

第四步:运行模式

  1. 立即测试

    • 保持窗口打开,插入U盘测试功能
    • 观察日志输出,确认配置正确
  2. 后台运行

    • 点击"后台运行"按钮
    • 程序隐藏到后台,只在任务栏显示
    • 插入U盘时自动工作

⌨️ 快捷键操作

显示隐藏窗口

  • 快捷键:依次按下 USB
  • 效果:立即显示被隐藏的主窗口

快速退出程序

  • 快捷键:在3秒内连续按 ESC 键5次
  • 效果:立即退出应用程序

🔄 反向复制使用指南

场景说明

当需要将之前备份的文件恢复到U盘时使用此功能。

操作步骤

  1. 在目标U盘根目录创建空文件,命名为 copy.stop
  2. 安全弹出U盘后重新插入
  3. 程序检测到标记文件,自动开始反向复制
  4. 复制完成后,程序会在U盘创建 .reverse_copied 标记文件
  5. 后续插入同一U盘不会重复反向复制

注意事项

  • 反向复制基于之前的备份目录
  • 每个U盘只会执行一次反向复制
  • 备份目录按U盘卷标和序列号组织

📊 日志文件说明

实时日志界面

  • 显示当前复制进度
  • 错误信息用红色标记
  • 自动滚动到最新内容

文件日志(CopyLog.txt)

[14:30:25] ==== 开始复制 2024-01-15 14:30:25 ====
[14:30:26] 发现U盘:F:\
[14:30:26] 成功复制:F:\工作报告.docx -> D:\Backup\WORKUSB_1234ABCD\工作报告.docx
[14:30:27] 跳过系统目录:F:\System Volume Information
[14:30:28] 一共复制15文件,成功14个,失败1个
[14:30:28] ==== 复制完成 2024-01-15 14:30:28 ====

目录树文件

为每个U盘生成详细的目录结构:

U盘目录树 - 2024-01-15 14:30:25
驱动器: F:\
卷标: WORKUSB
总空间: 14.45 GB
可用空间: 8.23 GB

目录结构:
├── WORKUSB/
│   ├── 文档/
│   │   ├── 工作报告.docx (245.6 KB)
│   │   ├── 会议记录.xlsx (189.3 KB)
│   ├── 图片/
│   │   ├── 截图1.png (1.2 MB)

⚙️ 配置示例

示例1:办公文档备份

文件类型:PPT文件、文本文档、表格文件、PDF文件
重复文件:以新换旧
文件大小:无限制
文件名过滤:报告,总结,计划
速度控制:前5分钟限速2MB/秒

示例2:媒体文件收集

文件类型:图片文件、视频文件、音频文件
重复文件:都保留
文件大小:限制500MB
文件名过滤:(空)
速度控制:前10分钟限速5MB/秒

示例3:完整U盘备份

文件类型:所有文件(*.*)
重复文件:跳过
文件大小:无限制
文件名过滤:(空)
速度控制:不限速

🛠️ 技术架构

核心组件

  • 设备监控:WMI事件监听U盘插入
  • 文件操作:异步文件流复制,支持大文件
  • 界面框架:Windows Forms
  • 日志系统:实时日志缓冲和文件输出

性能优化

  • 异步操作:避免界面卡顿
  • 内存管理:流式复制,降低内存占用
  • 错误恢复:重试机制处理临时错误
  • 速度控制:精确的流量控制算法

🔒 隐私与安全

数据安全

  • 所有操作在本地完成
  • 不收集用户数据
  • 不连接外部服务器

使用建议

  • 在可信环境中使用
  • 定期检查备份文件完整性
  • 重要数据建议多重备份

最后更新:2025年10月
版本:V1.2.1
感谢使用U盘文件复制器!

About

U盘文件复制器,启动时自动检测当前计算机是否有U盘插入,如果有,将U盘中的文件静默复制到本地,可以选择文件复制类型。

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages