Files
karuo-ai/01_卡资(金)/金仓_存储备份/文件整理/SKILL.md

7.9 KiB
Raw Blame History

name, description, group
name description group
文件整理 文件归档和硬盘管理。触发词整理文件、整理硬盘、外置硬盘、归档文件、文件分类、J_CENA、5类归档、清理下载、批量移动、批量删除。包含5类归档法、外置硬盘管理、批量操作脚本。

文件整理

为卡若提供文件整理和归档服务,包括本地和外置硬盘管理。

5类归档法

┌──────────────────────────────────────────────────────────────┐
│                        5类归档体系                            │
├──────────────────────────────────────────────────────────────┤
│                                                              │
│   01_资产库        长期价值内容照片、设计源文件、CG        │
│        │                                                     │
│   02_项目交付      完成的项目(部署包、源码、数据库)          │
│        │                                                     │
│   03_备份与同步    系统/数据备份机器备份、IM记录           │
│        │                                                     │
│   04_工具软件      安装包、驱动、插件                         │
│        │                                                     │
│   99_临时与待清理  临时文件、下载、可再下载内容                │
│                                                              │
└──────────────────────────────────────────────────────────────┘

外置硬盘 J_CENA_X64F

硬盘信息

项目
卷名 J_CENA_X64F
容量 1TB
格式 FAT32
单文件限制 4GB
挂载点 /Volumes/J_CENA_X64F

目录结构

/Volumes/J_CENA_X64F/
├── 00_索引与说明/          # 整理规则说明
├── 01_资产库/              # 素材/作品/可长期复用内容
│   ├── CG/                 # 游戏CG收藏 (324GB)
│   ├── 0 素材/             # 电商设计素材 (24GB)
│   ├── 视频/               # 视频内容 (30GB)
│   └── 抖音视频/           # 抖音相关
├── 02_项目交付/            # 部署包/源码/数据库/交付物
│   ├── MongoDB_NAS_部署包/
│   ├── 源码备份/
│   └── 数据库/
├── 03_备份与同步/          # 机器/工具/同步盘/历史备份
│   ├── backup/             # 旧机器备份 (43GB)
│   ├── 备份/               # 项目备份 (34GB)
│   └── IM备份/             # 聊天记录备份
├── 04_工具软件/            # 安装包/驱动/插件/工具
│   ├── 常用软件/
│   ├── 安卓APK/
│   └── OBS工具包/
└── 99_临时与待清理/        # 下载/缓存/临时/可再下载内容
    ├── 迅雷下载/
    └── BaiduNetdiskDownload/

常用操作

挂载/卸载硬盘

# 列出所有磁盘
diskutil list

# 挂载外置硬盘
diskutil mount /dev/disk4s4

# 安全卸载
diskutil unmount /Volumes/J_CENA_X64F

查看占用

# 外置盘各目录大小
du -d 1 -h /Volumes/J_CENA_X64F/

# 找大于1GB的文件
find /Volumes/J_CENA_X64F -type f -size +1G 2>/dev/null

# 找接近4GB限制的文件
find /Volumes/J_CENA_X64F -type f -size +3900M 2>/dev/null

批量操作脚本

批量移动文件

#!/bin/bash
# 批量移动下载文件到外置硬盘

DEST="/Volumes/J_CENA_X64F"

# 检查硬盘是否挂载
if [ ! -d "$DEST" ]; then
    echo "❌ 外置硬盘未挂载"
    exit 1
fi

# 移动安装包
echo "移动安装包..."
mv ~/Downloads/*.dmg "$DEST/04_工具软件/" 2>/dev/null
mv ~/Downloads/*.pkg "$DEST/04_工具软件/" 2>/dev/null
mv ~/Downloads/*.iso "$DEST/04_工具软件/" 2>/dev/null

# 移动压缩包到临时
echo "移动压缩包..."
mv ~/Downloads/*.zip "$DEST/99_临时与待清理/" 2>/dev/null
mv ~/Downloads/*.rar "$DEST/99_临时与待清理/" 2>/dev/null

# 移动视频
echo "移动视频..."
mv ~/Downloads/*.mp4 "$DEST/01_资产库/视频/" 2>/dev/null
mv ~/Downloads/*.mov "$DEST/01_资产库/视频/" 2>/dev/null

echo "✓ 移动完成"

批量删除脚本

#!/bin/bash
# 安全批量删除(支持大量文件)

TARGET_DIR="$1"

if [ -z "$TARGET_DIR" ]; then
    echo "用法: $0 <目标目录>"
    exit 1
fi

if [ ! -d "$TARGET_DIR" ]; then
    echo "❌ 目录不存在: $TARGET_DIR"
    exit 1
fi

echo "⚠️  即将删除: $TARGET_DIR"
echo "文件数量: $(find "$TARGET_DIR" -type f | wc -l | tr -d ' ')"
read -p "确认删除? (y/N): " confirm

if [ "$confirm" = "y" ] || [ "$confirm" = "Y" ]; then
    echo "🔥 开始删除..."
    
    # 停止 iCloud 避免干扰
    killall bird 2>/dev/null
    
    # 使用系统级 rm 删除
    /bin/rm -rf "$TARGET_DIR"
    
    echo "✓ 删除完成"
else
    echo "已取消"
fi

清理空目录

# 查找空目录
find /Volumes/J_CENA_X64F -type d -empty

# 删除空目录
find /Volumes/J_CENA_X64F -type d -empty -delete

下载文件夹管理

查看状态

# 下载文件夹大小
du -sh ~/Downloads

# 按修改时间列出(旧文件优先)
ls -lt ~/Downloads | tail -20

# 按大小排序
ls -lhS ~/Downloads | head -20

清理旧文件

# 查看30天前的文件
find ~/Downloads -mtime +30 -type f

# 删除30天前的文件谨慎
find ~/Downloads -mtime +30 -type f -delete

# 删除7天前的特定类型
find ~/Downloads -name "*.tmp" -mtime +7 -delete
find ~/Downloads -name "*.part" -mtime +7 -delete

FAT32 大文件处理

FAT32 单文件不能超过 4GB需分卷处理

# 分卷压缩(每片 3.9GB
split -b 3900m 大文件.zip 大文件.zip.part

# 合并还原
cat 大文件.zip.part* > 大文件.zip

# 使用 7z 分卷(更好)
7z a -v3900m 压缩包.7z 大文件/

# 还原 7z 分卷
7z x 压缩包.7z.001

文件同步和复制监控

复制进度监控

#!/bin/bash
# 监控大文件复制进度

SOURCE="$1"
DEST="$2"

if [ -z "$SOURCE" ] || [ -z "$DEST" ]; then
    echo "用法: $0 <源文件> <目标路径>"
    exit 1
fi

# 获取源文件大小
TOTAL_SIZE=$(stat -f%z "$SOURCE")
TOTAL_MB=$((TOTAL_SIZE / 1024 / 1024))

echo "📂 源文件: $SOURCE"
echo "📊 总大小: ${TOTAL_MB}MB"
echo ""

# 开始复制(后台)
cp "$SOURCE" "$DEST" &
CP_PID=$!

# 监控进度
while kill -0 $CP_PID 2>/dev/null; do
    if [ -f "$DEST/$(basename $SOURCE)" ]; then
        CURRENT_SIZE=$(stat -f%z "$DEST/$(basename $SOURCE)" 2>/dev/null || echo 0)
        CURRENT_MB=$((CURRENT_SIZE / 1024 / 1024))
        PERCENT=$((CURRENT_SIZE * 100 / TOTAL_SIZE))
        echo -ne "\r📥 进度: ${CURRENT_MB}MB / ${TOTAL_MB}MB (${PERCENT}%)"
    fi
    sleep 1
done

echo ""
echo "✓ 复制完成!"

整理原则

原则 说明
可读性 文件名用中文,保持可读性
结构化 保留原始目录结构关键信息
可追溯 生成操作日志
安全性 删除前必须确认
格式限制 FAT32 单文件不超过 4GB

注意事项

启动盘文件不动

以下文件/目录是 Windows 启动盘必需的,不要移动或删除:

boot/
efi/
sources/
bootmgr*
setup.exe
$RECYCLE.BIN
System Volume Information
.Spotlight-V100

系统隐藏目录

# 查看隐藏文件
ls -la /Volumes/J_CENA_X64F/

# 这些目录是系统自动生成的,一般不需要处理
# - .Spotlight-V100Spotlight 索引)
# - .fseventsd文件事件日志
# - .Trashes回收站