关于 file-organizer
File Organizer 是用于分析和整理目录的技能,适合需要管理杂乱文件夹或项目文件的人。它会先提出整理计划,经批准后移动或重命名文件,并要求确认后才删除。
主要功能
- 01分析文件夹与文件类型
- 02查找重复文件
- 03建议文件夹结构
- 04获批后移动和重命名
- 05记录变更以便撤销
适用场景
- 01整理杂乱的 Downloads 文件夹
- 02清理前检查重复文件
- 03建立项目目录结构
- 04归档已完成的项目
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ sickn33/ agentic-awesome-skills --skill file-organizer安装后在 Claude Code 中输入/file-organizer确认已加载。
详细介绍
文件整理
何时使用此技能
- 你的“下载”文件夹杂乱无章
- 文件散落各处,让你无从查找
- 有重复文件占用了空间
- 你的文件夹结构已经不合适
- 你想养成更好的整理习惯
- 你正在启动新项目,需要合理的结构
- 你想在归档旧项目之前进行整理
此技能的功能
- 分析当前结构:检查你的文件夹和文件,了解现有内容
- 查找重复项:识别系统中的重复文件
- 提出整理方案:根据你的内容建议合理的文件夹结构
- 自动整理:在获得你批准后移动、重命名和整理文件
- 结合上下文:根据文件类型、日期和内容做出合理判断
- 减少杂乱:找出你可能不再需要的旧文件
指示
当用户请求文件整理帮助时:
-
了解范围
提出澄清问题:
- 哪个目录需要整理?(“下载”、“文档”还是整个主文件夹?)
- 主要问题是什么?(找不到文件、有重复项、太乱了还是没有结构?)
- 有需要避开的文件或文件夹吗?(当前项目、敏感数据?)
- 希望以多大力度进行整理?(保守整理还是全面清理?)
-
分析当前状态
检查目标目录:
# Get overview of current structure ls -la [target_directory] # Check file types and sizes find [target_directory] -type f -exec file {} \; | head -20 # Identify largest files du -sh [target_directory]/* | sort -rh | head -20 # Count file types find [target_directory] -type f | sed 's/.*\.//' | sort | uniq -c | sort -rn总结发现:
- 文件和文件夹总数
- 文件类型分布
- 文件大小分布
- 日期范围
- 明显的整理问题
-
识别整理模式
根据文件确定合理的分组方式:
按类型:
- 文档(PDF、DOCX、TXT)
- 图片(JPG、PNG、SVG)
- 视频(MP4、MOV)
- 压缩包(ZIP、TAR、DMG)
- 代码/项目(包含代码的目录)
- 电子表格(XLSX、CSV)
- 演示文稿(PPTX、KEY)
按用途:
- 工作与个人
- 活跃与归档
- 特定项目
- 参考资料
- 临时/草稿文件
按日期:
- 当前年份/月份
- 过去几年
- 很久以前的文件(可考虑归档)
-
查找重复项
如果用户提出请求,搜索重复项:
# Find exact duplicates by hash find [directory] -type f -exec shasum -a 256 {} \;
Group by the digest field using a filename-safe script; the full output line includes paths.
Identical hashes are candidates: compare bytes and metadata before any removal.
Find files with similar names
find [directory] -type f -printf '%f\n' | sort | uniq -d
Find similar-sized files
find [directory] -type f -printf '%s %p\n' | sort -n
对于每组重复项:
- 显示所有文件路径
- 显示文件大小和修改日期
- 建议保留哪个文件(通常是最新的或文件名最合适的)
- **重要**:删除前务必征求确认
5. **提出整理方案**
进行更改前,先给出清晰的方案:
```markdown
# Organization Plan for [Directory]
## Current State
- X files across Y folders
- [Size] total
- File types: [breakdown]
- Issues: [list problems]
## Proposed Structure
[Directory]/
├── Work/
│ ├── Projects/
│ ├── Documents/
│ └── Archive/
├── Personal/
│ ├── Photos/
│ ├── Documents/
│ └── Media/
└── Downloads/
├── To-Sort/
└── Archive/
## Changes I'll Make
1. **Create new folders**: [list]
2. **Move files**:
- X PDFs → Work/Documents/
- Y images → Personal/Photos/
- Z old files → Archive/
3. **Rename files**: [any renaming patterns]
4. **Delete**: [duplicates or trash files]
## Files Needing Your Decision
- [List any files you're unsure about]
Ready to proceed? (yes/no/modify)
-
执行整理
获得批准后,按步骤整理:
# Create folder structure mkdir -p "path/to/new/folders" # Move files with clear logging mv "old/path/file.pdf" "new/path/file.pdf" # Rename files with consistent patterns # Example: "YYYY-MM-DD - Description.ext"重要规则:
- 删除任何内容前务必确认
- 记录所有移动操作,以便必要时撤销
- 保留原始修改日期
- 默认拒绝覆盖;显示确切的源路径和目标路径,并保留可逆的移动清单。不要跟随指向授权目录树之外的符号链接。
- 妥善处理文件名冲突
- 遇到意外情况时停止并询问
-
提供总结和维护建议
整理完成后:
# Organization Complete! ✨ ## What Changed - Created [X] new folders - Organized [Y] files - Freed [Z] GB by removing duplicates - Archived [W] old files ## New Structure [Show the new folder tree] ## Maintenance Tips To keep this organized: 1. **Weekly**: Sort new downloads 2. **Monthly**: Review and archive completed projects 3. **Quarterly**: Check for new duplicates 4. **Yearly**: Archive old files ## Quick Commands for You # Find files modified this week find . -type f -mtime -7 # Sort downloads by type [custom command for their setup] # Find duplicates [custom command]还要整理另一个文件夹吗?
最佳实践
文件夹命名
- 使用清晰、具体的名称
- 避免使用空格(使用连字符或下划线)
- 名称要具体:“client-proposals”比“docs”更合适
- 使用前缀控制排序:“01-current”、“02-archive”
文件命名
- 包含日期:“2024-10-17-meeting-notes.md”
- 使用具体名称:“q3-financial-report.xlsx”
- 避免在名称中添加版本号(改用版本控制)
- 删除下载产生的冗余部分:“document-final-v2 (1).pdf” → “document.pdf”
何时归档
- 6 个月或更久未处理的项目
- 之后可能需要查阅的已完成工作
- 迁移到新系统后的旧版本
- 不确定是否要删除的文件(先归档)
示例
用户请求:
将我的“下载”文件夹整理成一种易于预测的结构,先显示建议的移动操作,并且不要删除文件。
限制
- 仅当任务明确符合上述范围时,才使用此技能。
- 不要将输出视为特定环境验证、测试或专家评审的替代品。
- 如果缺少必需的输入、权限、安全边界或成功标准,请停止并请求澄清。
评论
支持 Markdown