← 返回
未分类

jm-jsjkxyjs02-wat-804

整理指定文件夹中的文件,按类型分类到不同子文件夹中。支持文档、图片、代码、压缩包、视频等分类。触发词:整理文件夹、分类文件、文件归类、清理下载文件夹、整理桌面。参数:[目标文件夹路径]
整理指定文件夹中的文件,按类型分类到不同子文件夹中。支持文档、图片、代码、压缩包、视频等分类。触发词:整理文件夹、分类文件、文件归类、清理下载文件夹、整理桌面。参数:[目标文件夹路径]
jm-jsjkxyjs02-wat-1704
未分类 community v1.0.0 1 版本 100000 Key: 无需
★ 0
Stars
📥 70
下载
💾 0
安装
1
版本
#latest

概述

文件整理工具 (File Organizer)

一个自动化文件分类工具,可按文件扩展名批量整理目标文件夹中的文件,自动创建分类子目录并移动文件,让杂乱的文件夹一键变得整洁有序。

使用场景

  • 用户说「帮我整理下载文件夹」「整理桌面」「把文件夹里的文件分类」
  • 用户说「清理一下这个文件夹」「把这个目录里的文件按类型归类」
  • 用户提供了文件夹路径,希望自动分类其中的文件

支持的文件分类

分类支持的文件扩展名
--------------------------------------------------------------
文档.doc, .docx, .pdf, .txt, .md, .ppt, .pptx, .xls, .xlsx, .csv
图片.jpg, .jpeg, .png, .gif, .svg, .webp, .bmp, .ico, .tiff
代码.js, .py, .html, .css, .ts, .java, .cpp, .c, .go, .rs, .vue, .jsx, .tsx
压缩包.zip, .rar, .7z, .tar.gz, .tar, .gz, .bz2
视频.mp4, .avi, .mov, .mkv, .wmv, .flv, .webm
音频.mp3, .wav, .flac, .aac, .ogg, .m4a
安装包.exe, .msi, .dmg, .apk, .app

执行流程

1. 确认目标文件夹

当用户请求整理文件时,首先确认目标文件夹路径:

用户:帮我整理下载文件夹
助手:好的,我来整理你的下载文件夹。请问是哪个路径?
      - Windows: C:\Users\用户名\Downloads
      - macOS: ~/Downloads
      或者你可以提供具体路径。

2. 扫描目标文件夹

使用以下命令扫描文件夹内容(Windows PowerShell):

# 获取所有文件(不含子目录)
Get-ChildItem -Path "目标路径" -File | Select-Object Name, Extension

3. 分析文件类型并规划分类

统计各类文件数量,向用户展示分类计划:

扫描完成,发现以下文件:
- 文档: 15 个 (.pdf, .docx, .txt)
- 图片: 8 个 (.jpg, .png)
- 代码: 3 个 (.py)
- 压缩包: 5 个 (.zip, .rar)
- 其他: 2 个

计划创建以下子文件夹并移动文件:
- 文档/
- 图片/
- 代码/
- 压缩包/
- 其他/

是否继续?(用户确认后执行)

4. 创建分类文件夹并移动文件

# 创建分类文件夹
$categories = @("文档", "图片", "代码", "压缩包", "视频", "音频", "安装包", "其他")
foreach ($cat in $categories) {
    $folder = Join-Path $targetPath $cat
    if (-not (Test-Path $folder)) {
        New-Item -ItemType Directory -Path $folder | Out-Null
    }
}

# 定义扩展名映射
$extMap = @{
    ".doc"="文档"; ".docx"="文档"; ".pdf"="文档"; ".txt"="文档"; ".md"="文档"
    ".ppt"="文档"; ".pptx"="文档"; ".xls"="文档"; ".xlsx"="文档"; ".csv"="文档"
    ".jpg"="图片"; ".jpeg"="图片"; ".png"="图片"; ".gif"="图片"; ".svg"="图片"
    ".js"="代码"; ".py"="代码"; ".html"="代码"; ".css"="代码"; ".ts"="代码"
    ".zip"="压缩包"; ".rar"="压缩包"; ".7z"="压缩包"; ".tar"="压缩包"; ".gz"="压缩包"
    ".mp4"="视频"; ".avi"="视频"; ".mov"="视频"; ".mkv"="视频"
    ".mp3"="音频"; ".wav"="音频"; ".flac"="音频"
    ".exe"="安装包"; ".msi"="安装包"; ".apk"="安装包"
}

# 移动文件
Get-ChildItem -Path $targetPath -File | ForEach-Object {
    $ext = $_.Extension.ToLower()
    $category = if ($extMap.ContainsKey($ext)) { $extMap[$ext] } else { "其他" }
    $dest = Join-Path $targetPath $category
    Move-Item -Path $_.FullName -Destination $dest -Force
    Write-Output "移动: $($_.Name) -> $category/"
}

5. 输出整理结果

整理完成!
- 移动文件: 33 个
- 创建文件夹: 5 个
- 跳过文件夹: 已存在的不移动

整理后的文件夹结构:
目标文件夹/
├── 文档/
├── 图片/
├── 代码/
├── 压缩包/
└── 其他/

安全注意事项

  1. 不处理子目录:只处理目标文件夹根目录下的文件,不递归处理子目录
  2. 不覆盖同名文件:如果目标文件夹中已存在同名文件,跳过移动并提示用户
  3. 保留原文件夹:只移动文件,不删除任何文件夹
  4. 用户确认:执行前向用户展示分类计划,等待确认

可选参数

用户可以指定自定义分类:

用户:把 Downloads 里的文件按月份整理
助手:好的,我会按文件的修改日期创建月份文件夹(如 2024-01、2024-02)并分类。

错误处理

  • 目标路径不存在 → 提示用户检查路径
  • 权限不足 → 提示用户以管理员权限运行
  • 文件被占用 → 跳过该文件并记录,继续处理其他文件

示例对话

用户:帮我整理一下 D:\Downloads 文件夹
助手:好的,正在扫描 D:\Downloads...
      发现 47 个文件,包括文档、图片、压缩包等类型。
      计划创建:文档/ 图片/ 压缩包/ 视频/ 其他/
      确认执行吗?

用户:好的
助手:开始整理...(执行移动操作)
      完成!已整理 47 个文件到 5 个分类文件夹中。

版本历史

共 1 个版本

  • v1.0.0 Initial release 当前
    2026-05-23 14:09 安全 安全

安全检测

腾讯云安全 (Keen)

安全,无风险
查看报告

腾讯云安全 (Sanbu)

安全,无风险
查看报告

🔗 相关推荐

ai-intelligence

Self-Improving + Proactive Agent

ivangdavila
自我反思+自我批评+自我学习+自组织记忆。智能体评估自身工作、发现错误并持续改进。
★ 1,366 📥 319,412
security-compliance

Skill Vetter

spclaudehome
AI智能体技能安全预审工具。安装ClawdHub、GitHub等来源技能前,检查风险信号、权限范围及可疑模式。
★ 1,221 📥 267,139
developer-tools

Github

steipete
使用 `gh` CLI 与 GitHub 交互,通过 `gh issue`、`gh pr`、`gh run` 和 `gh api` 管理议题、PR、CI 运行及高级查询。
★ 672 📥 324,767