TROISINH
Ứng dụng cơ bảnỨng dụng đời thường

Tự động dọn file, đổi tên và sắp xếp ảnh hàng loạt bằng Claude Code

Dùng Claude Code để dọn dẹp thư mục Download, đổi tên ảnh hàng loạt theo nội dung, và sắp xếp file tự động bằng AI — không cần viết script phức tạp.

Định nghĩa

File management automation trong Claude Code là việc kết hợp khả năng vision (nhìn ảnh), công cụ filesystem (Bash/MCP), và semantic reasoning để tự động phân loại, đổi tên và sắp xếp file dựa trên nội dung thực tế — thay vì chỉ dựa vào regex hoặc metadata cũ kỹ.

Giải thích chi tiết

Từ regex sang semantic: Bước nhảy vọt trong quản lý file

Truyền thống, để đổi tên hàng loạt bạn dùng rename hoặc regex pattern: thay IMG_1234.jpg bằng 2024-06-01.jpg dựa vào EXIF date. Cách này thất bại khi camera reset counter, sai ngày, hoặc filename không chứa thông tin gì (DSC_001.jpg).

Claude Code giải quyết bài toán này bằng content-aware classification. Khi bạn đọc file ảnh qua công cụ Read, Claude 3.5 Sonnet nhìn thấy nội dung trực tiếp: "golden retriever ở công viên, chụp ngang, hoàng hôn" — từ đó tạo ra tên file mô tả như pets/dog-park-2024-portrait.jpg. Đây là sự chuyển đổi từ đường dẫn máy móc (machine-addressable paths) sang tổ chức mang ý nghĩa con người (human-meaningful organization).

Kiến trúc an toàn: Planning mode và hooks

Nỗi sợ lớn nhất khi để AI "di chuyển file" là mất dữ liệu. Claude Code giải quyết qua hai cơ chế:

Planning Mode: Trước khi chạm vào bất kỳ file nào, Claude tạo một manifest chi tiết: "Tôi sẽ di chuyển 47 file này sang đây, đổi tên 12 file này, đề xuất xóa 3 file trùng lặp." Bạn xem danh sách như code review, duyệt (y) rồi mới thực thi. Điều này biến automation từ hộp đen (black box) thành quy trình có kiểm soát.

Validation Hooks: Dùng PostToolUse hooks trong .claude/settings.json để kiểm tra sau mỗi thao tác. Ví dụ: hook tự động verify file integrity sau khi move, hoặc chặn lệnh rm nếu chưa có backup. Đây là circuit breaker — ngắt mạch khi phát hiện rủi ro.

Xử lý batch và background task

Với thư viện ảnh lớn (10.000+ file), Claude Code dùng Background Tasks hoặc Auto Mode để xử lý từng batch nhỏ mà không block terminal. Context window 200K tokens cho phép phân tích ~50-100 ảnh mỗi lượt để so sánh và sắp xếp, tận dụng compression mechanism của subagents: mỗi batch xử lý trong context window riêng, tránh pollution.

Theo community reports, tốc độ đạt 200-500 ảnh/giờ cho workflow phân loại semantic + đổi tên, so với 20-30 ảnh/giờ nếu làm thủ công.

Ví dụ thực tế

Dọn thư mục Download hỗn loạn

Thư mục Download chứa đủ thứ: PDF hóa đơn Shopee/Lazada, ảnh chụp màn hình chuyển khoản VietQR, file zip tài liệu, installer .dmg. Thay vì dùng bash script phức tạp, bạn mô tả bằng tiếng Việt:

/plan
Dọn dẹp ~/Downloads: 
- PDF hóa đơn (chứa từ "invoice", "hóa đơn điện tử", "VAT") → chuyển vào ~/Documents/HoaDon/
- Ảnh chụp màn hình banking/VietQR (tên bắt đầu bằng Screenshot, PNG, có chứa số tài khoản) → chuyển vào ~/Pictures/Banking/
- File zip cũ hơn 30 ngày → xóa
- Còn lại giữ nguyên

Claude tạo kế hoạch, bạn approve, sau đó nó tự chạy find, mv, rm với safety checks. Với MCP Filesystem server, thậm chí không cần mở terminal — Claude gọi tool move_file trực tiếp.

Sắp xếp thư viện ảnh theo nội dung

Bạn có 5 năm ảnh chụp điện thoại với tên IMG_001.jpg đến IMG_9999.jpg. Dùng Claude Code:

# Tạo taxonomy trong CLAUDE.md trước
cat > CLAUDE.md << 'EOF'
## Photo Organization Rules
- Beach vacation: ảnh có biển, cát, bikini
- Food: ảnh có đĩa ăn, nhà hàng, street food Việt Nam
- Pets: chó, mèo, động vật
- Screenshots: UI elements, text nhiều, tỷ lệ 9:16 hoặc 16:9, VietQR, Zalo chat
- Delete candidates: ảnh mờ, tối đen, chụp sàn nhà do lỡ tay, ảnh trùng lặp burst mode
EOF

# Chạy phân loại
claude -p "Đọc tất cả ảnh trong ~/Photos/Unsorted/, phân loại theo CLAUDE.md, di chuyển vào thư mục tương ứng trong ~/Photos/Organized/"

Claude dùng vision capability để nhìn từng ảnh, nhận diện nội dung, sau đó tạo câu lệnh mv phù hợp. Với ảnh ambiguous (ví dụ: chụp chó ở bãi biển), nó sẽ hỏi bạn hoặc để vào thư mục multi-tag/ tùy cấu hình.

Đổi tên hóa đơn PDF theo ngày và nhà cung cấp

Bạn tải về 100 file PDF hóa đơn từ email Shopee, Tiki, Grab, tên mặc định là invoice(1).pdf, invoice(2).pdf. Dùng Claude Code để extract text và đổi tên:

Đọc nội dung tất cả PDF trong ~/Invoices/, trích xuất:
- Ngày hóa đơn (format YYYY-MM-DD)
- Tên công ty bán hàng (Shopee, Tiki, Grab, Lazada...)
- Số tiền cuối cùng (tìm dòng "Tổng cộng" hoặc "Thành tiền")

Đổi tên file thành: {date}_{company}_[amount].pdf
Ví dụ: 2024-03-15_Shopee_1250000VND.pdf

Claude dùng pdftotext (qua Bash tool) hoặc MCP PDF server để đọc nội dung, sau đó generate script đổi tên hàng loạt. Nếu có file bị lỗi font (hiển thị ký tự loằng ngoằng do encoding), nó detect và để lại tên gốc để xử lý thủ công.

Ứng dụng

Freelancer & Content Creator

Quản lý assets: tự động phân loại footage theo dự án, tách ảnh RAW và JPEG, xóa file cache cũ. Dùng /loop để lên lịch dọn dẹp thư mục Downloads mỗi tuần.

Kế toán & Văn phòng

Xử lý chứng từ: scan vào folder "Inbox", Claude tự động đọc OCR, phân loại hóa đơn VAT vs biên lai, đổi tên theo quy tắc công ty (VD: YYYY-MM-DD_LoaiHoaDon_SoTien.pdf), chuyển vào thư mục theo tháng/năm. Giảm 80% thời gian nhập liệu thủ công.

Developer & DevOps

Dọn log files, cache, node_modules cũ. Dùng hooks để tự động xóa file .log quá 7 ngày mỗi khi chạy git commit. Quản lý dotfiles và config backup trên nhiều máy.

Người dùng phổ thông (Non-coder)

Dùng vibe-coding approach: mô tả "dọn giúp tôi thư mục này, giữ ảnh đẹp, xóa ảnh mờ", Claude tự hiểu tiêu chí "đẹp" (có người, không blur, sáng đủ) và thực thi — không cần biết Python hay bash.

So sánh

Tiêu chíClaude CodeBash Script truyền thốngGUI Tools (Hazel, NameChanger)
Phân loại nội dungNhìn ảnh, đọc PDF, hiểu semanticChỉ dựa vào tên file, dateGiới hạn metadata và regex
Linh hoạtThay đổi logic bằng văn bản tự nhiênViết lại codeClick nhiều, setup phức tạp
An toànPlanning mode, hooks kiểm soátMột lệnh sai là mất dữ liệuUndo có sẵn nhưng tốn công
Tốc độ setupVài phút mô tảViết + debug script 30-60 phútCài đặt + cấu hình rules
Batch lớnBackground task, resume đượcChạy foreground, crash giữa chừng là mất trắngThường bị treo với 10k+ files

Kết luận: GUI tools phù hợp cho user không kỹ thuật với nhu cầu đơn giản. Bash script nhanh nếu bạn là expert và luật cố định. Claude Code là sweet spot giữa hai thế giới: dễ setup như GUI, linh hoạt như code, và có semantic understanding mà hai cái kia không có.

Bài viết liên quan

Cùng cụm

Đọc tiếp

On this page