---
name: file-organizer
description: 按文件类型整理指定目录中的文件。将图片、文档、视频、音频、压缩包、代码、可执行文件等自动归类到对应文件夹。支持预览(dry-run)、撤销(undo)。
argument-hint: [目录路径]
allowed-tools: [Bash]
dependencies: python>=3.6
version: "1.0.1"
author: jm-jsjkxyjs01-mjz-303
---

# 文件整理 Skill

按文件类型自动归类指定目录中的文件。

## 使用方式

```
/file-organizer [目录路径]
```

- 提供了目录路径 → 直接整理该目录
- 未提供路径 → 交互式提示输入

## 分类规则

| 分类 | 扩展名 |
|------|--------|
| 图片 | jpg, jpeg, png, gif, bmp, svg, webp, ico, tiff, avif, raw, heic |
| 文档 | doc, docx, xls, xlsx, ppt, pptx, pdf, txt, md, csv, odt, rtf, wps, epub |
| 视频 | mp4, avi, mkv, mov, wmv, flv, webm, m4v, rmvb, 3gp |
| 音频 | mp3, wav, flac, aac, ogg, wma, m4a, ape |
| 压缩包 | zip, rar, 7z, tar, gz, bz2, xz, zst, iso |
| 代码 | py, js, ts, jsx, tsx, java, c, cpp, h, html, css, go, rs, php, rb, sh, bat, ps1, swift, kt, dart, lua, vue, svelte, sql, json, yaml, toml |
| 可执行文件 | exe, msi, appimage, deb, rpm |
| 设计文件 | psd, ai, sketch, fig, xd, cad, blend, 3ds, dxf, dwg |

未匹配的文件归入「其他」文件夹。

## 执行流程

1. 用户提供或确认要整理的目录路径
2. 运行脚本扫描目录中的文件并进行分类
3. 显示分类预览，询问用户是否确认执行
4. 用户确认后执行移动操作
5. 显示整理结果摘要
6. 整理记录写入 `.organizer_log.json`（可撤销）

## 脚本功能

在目标目录下运行脚本：

```bash
# 基础整理
python organize.py <目标目录>

# 预览模式（只看不执行）
python organize.py <目标目录> --dry-run

# 详细模式（显示每个文件）
python organize.py <目标目录> --verbose

# 撤销整理
python organize.py <目标目录> --undo
```

## 注意事项

- 仅整理目标目录下的**直接文件**（不递归处理子目录）
- 已存在于对应分类文件夹中的文件会被跳过
- 遇到重名文件会自动添加数字后缀（如 `file_1.txt`）
- 隐藏文件（以 `.` 开头）不会被移动
- 每次整理记录保存在 `.organizer_log.json` 中，支持撤销
