{"skill":{"slug":"filesystem","displayName":"Filesystem","summary":"Perform advanced filesystem tasks including listing, recursive searching by name or content, batch copying/moving/deleting files, and analyzing directory siz...","description":"---\nname: filesystem\ndescription: Advanced filesystem operations for listing files, searching content, batch processing, and directory analysis. Supports recursive search, file type filtering, size analysis, and batch operations like copy/move/delete. Use when you need to: list directory contents, search for files by name or content, analyze directory structures, perform batch file operations, or analyze file sizes and distribution.\n---\n\n# Filesystem Operations\n\n文件系统操作工具，提供目录列表、内容搜索、批量处理和目录分析功能。\n\n## 快速开始\n\n### 列出目录\n```bash\n# 列出当前目录\nls -la\n\n# 递归列出目录树\nfind . -type f -name \"*.md\" | head -20\n\n# 按类型过滤\nfind . -type f \\( -name \"*.md\" -o -name \"*.txt\" \\)\n```\n\n### 搜索文件\n```bash\n# 按名称搜索\nfind . -name \"*keyword*\"\n\n# 按内容搜索\ngrep -r \"keyword\" . --include=\"*.md\"\n\n# 不区分大小写搜索\ngrep -ri \"keyword\" . --include=\"*.md\"\n```\n\n### 分析目录\n```bash\n# 统计文件类型\nfind . -type f -name \"*.md\" | wc -l\n\n# 查看目录大小\ndu -sh .\n\n# 找出最大文件\nfind . -type f -exec ls -lh {} \\; | sort -k5 -h | head -10\n```\n\n---\n\n## 核心功能\n\n### 1. 目录列表\n\n**基础列表**：\n```bash\nls -la                    # 详细列表\nls -lh                    # 人类可读大小\nls -lt                    # 按修改时间排序\nls -R                     # 递归列表\n```\n\n**高级列表**：\n```bash\n# 列出特定类型\nfind . -type f -name \"*.md\"\n\n# 按深度列出\nfind . -maxdepth 2 -type f\n\n# 排除特定目录\nfind . -type f -not -path \"*/node_modules/*\"\n```\n\n---\n\n### 2. 文件搜索\n\n**按名称搜索**：\n```bash\n# 精确匹配\nfind . -name \"filename.md\"\n\n# 模式匹配\nfind . -name \"*pattern*\"\n\n# 大小写不敏感\nfind . -iname \"*pattern*\"\n```\n\n**按内容搜索**：\n```bash\n# 基础搜索\ngrep -r \"keyword\" .\n\n# 包含行号\ngrep -rn \"keyword\" .\n\n# 只搜索特定文件\ngrep -r \"keyword\" . --include=\"*.md\"\n\n# 排除目录\ngrep -r \"keyword\" . --exclude-dir=node_modules\n```\n\n**正则表达式搜索**：\n```bash\n# 使用正则\ngrep -r \"^## \" . --include=\"*.md\"\n\n# 多个关键词\ngrep -r \"key1\\|key2\" .\n\n# 行首/行尾\ngrep -r \"^关键词\" .\ngrep -r \"关键词$\" .\n```\n\n---\n\n### 3. 批量操作\n\n**批量复制**：\n```bash\n# 复制特定类型\nfind . -name \"*.md\" -exec cp {} backup/ \\;\n\n# 复制到多个位置\nfor file in *.md; do cp \"$file\" dir1/ && cp \"$file\" dir2/; done\n```\n\n**批量移动**：\n```bash\n# 移动特定文件\nfind . -name \"*.log\" -exec mv {} logs/ \\;\n\n# 按条件移动\nfind . -type f -size +1M -exec mv {} large/ \\;\n```\n\n**批量删除**：\n```bash\n# 删除特定类型\nfind . -name \"*.tmp\" -delete\n\n# 删除空目录\nfind . -type d -empty -delete\n\n# 删除旧文件\nfind . -type f -mtime +30 -delete\n```\n\n**批量重命名**：\n```bash\n# 使用 rename 命令\nrename 's/old/new/' *.md\n\n# 添加前缀\nfor file in *.md; do mv \"$file\" \"prefix_$file\"; done\n```\n\n---\n\n### 4. 目录分析\n\n**大小分析**：\n```bash\n# 总大小\ndu -sh .\n\n# 各目录大小\ndu -h --max-depth=1 . | sort -hr\n\n# 最大的文件\nfind . -type f -exec ls -lh {} \\; | sort -k5 -hr | head -10\n```\n\n**文件类型统计**：\n```bash\n# 按扩展名统计\nfind . -type f -name \"*.md\" | wc -l\n\n# 各类型统计\nfind . -type f -name \"*.*\" | sed 's/.*\\.//' | sort | uniq -c\n```\n\n**目录结构分析**：\n```bash\n# 目录树\ntree -L 2\n\n# 递归深度\nfind . -type d | wc -l\n\n# 文件分布\nfind . -type f | cut -d/ -f1-2 | sort | uniq -c\n```\n\n---\n\n### 5. 文件信息查询\n\n**文件详情**：\n```bash\n# 完整信息\nstat filename\n\n# 只看大小\nls -lh filename\n\n# 只看时间\nls -lt filename\n```\n\n**文件内容预览**：\n```bash\n# 头部\nhead -20 filename\n\n# 尾部\ntail -20 filename\n\n# 随机行\nshuf -n 10 filename\n\n# 字符数\nwc -c filename\n\n# 行数\nwc -l filename\n```\n\n---\n\n## 实用工具\n\n### tree 命令\n```bash\n# 安装\nbrew install tree\n\n# 使用\ntree -L 2 -I 'node_modules|__pycache__'\n```\n\n### fd 命令（快速查找）\n```bash\n# 安装\nbrew install fd\n\n# 使用\nfd \"pattern\" /path\nfd -e md .    # 只找 md 文件\nfd -t f .       # 只找文件\n```\n\n### ripgrep 命令（快速搜索）\n```bash\n# 安装\nbrew install ripgrep\n\n# 使用\nrg \"keyword\" .\nrg -t md \"keyword\" .\nrg -i \"keyword\" .          # 不区分大小写\nrg --type md \"pattern\" .\n```\n\n---\n\n## 最佳实践\n\n### 1. 搜索优化\n- 使用 `fd` 或 `ripgrep` 替代 `find` 和 `grep`（更快）\n- 先缩小搜索范围，再进行深度搜索\n- 使用文件类型过滤减少搜索时间\n\n### 2. 批量操作安全\n- 操作前先用 `--dry-run` 查看会发生什么\n- 批量删除前先列出文件确认\n- 重要操作前先备份\n\n### 3. 目录分析\n- 使用 `-max-depth` 限制递归深度\n- 使用 `-size` 过滤大文件\n- 使用 `-mtime` 按时间筛选\n\n---\n\n## 常见任务\n\n### 查找并处理 Markdown 文件\n```bash\n# 查找所有 md 文件\nfind . -name \"*.md\" -type f\n\n# 统计 md 文件数量\nfind . -name \"*.md\" | wc -l\n\n# 列出最大的 md 文件\nfind . -name \"*.md\" -exec ls -lh {} \\; | sort -k5 -hr | head -5\n```\n\n### 搜索并替换内容\n```bash\n# 搜索所有匹配项\ngrep -rn \"old_text\" . --include=\"*.md\"\n\n# 替换（使用 sed）\nfind . -name \"*.md\" -exec sed -i '' 's/old_text/new_text/g' {} \\;\n```\n\n### 清理临时文件\n```bash\n# 删除 .tmp 文件\nfind . -name \"*.tmp\" -delete\n\n# 删除空目录\nfind . -type d -empty -delete\n\n# 删除 30 天前的日志\nfind . -name \"*.log\" -mtime +30 -delete\n```\n\n---\n\n## 安全提醒\n\n⚠️ **批量操作前先确认**：\n- 列出要操作的文件\n- 确认不会误删重要文件\n- 考虑先备份\n\n⚠️ **删除操作不可逆**：\n- `rm` 删除后无法恢复\n- 大批量删除前仔细检查\n- 考虑使用 `rm -i` 交互式删除\n\n⚠️ **权限注意**：\n- 某些操作可能需要 sudo\n- 系统目录操作要谨慎\n- 考虑文件权限问题\n","tags":{"latest":"1.0.0"},"stats":{"comments":0,"downloads":13986,"installsAllTime":340,"installsCurrent":339,"stars":8,"versions":1},"createdAt":1770898043082,"updatedAt":1778990056997},"latestVersion":{"version":"1.0.0","createdAt":1770898043082,"changelog":"Initial release of advanced filesystem utilities.\n\n- Provides directory listing, content search, batch file processing, and directory analysis.\n- Supports recursive search, file type filtering, size checks, and batch operations (copy/move/delete/rename).\n- Includes best practices and safety reminders for bulk operations.\n- Offers practical command examples for common tasks, including search, replacement, and cleaning up temporary files.\n- Tips for using enhanced tools like tree, fd, and ripgrep for faster file operations.","license":null},"metadata":null,"owner":{"handle":"amaofx","userId":"s1707ahzgvb81xnsp043y80zan83h83e","displayName":"AmaoFx","image":"https://avatars.githubusercontent.com/u/11001226?v=4"},"moderation":null}