You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何删除Faces目录中与Faces_v2重复的文件及对应目录?

清除Faces目录中与Faces_v2重复的文件及目录

场景说明

我有两个目录Faces和Faces_v2,误将本该放入Faces_v2的文件粘贴到了Faces目录中,现在需要删除Faces里所有在Faces_v2已存在的文件,甚至是完全重复的子目录(比如livecpk/Faces/Asset/model/character/face/real/153809这类,对应目录在Faces_v2中完整存在)。

通过fdupes已查出重复文件,输出结果如下:

383051 bytes each:
livecpk/Faces_v2/Asset/model/character/face/real/153809/sourceimages/#windx11/face_srm.ftex
livecpk/Faces/Asset/model/character/face/real/153809/sourceimages/#windx11/face_srm.ftex

6410 bytes each:
livecpk/Faces_v2/Asset/model/character/face/real/153809/sourceimages/#windx11/eye_occlusion_alp.ftex
livecpk/Faces/Asset/model/character/face/real/153809/sourceimages/#windx11/eye_occlusion_alp.ftex

327654 bytes each:
livecpk/Faces_v2/Asset/model/character/face/real/153809/sourceimages/#windx11/face_bsm_alp.ftex
livecpk/Faces/Asset/model/character/face/real/153809/sourceimages/#windx11/face_bsm_alp.ftex

452968 bytes each:
livecpk/Faces_v2/Asset/model/character/face/real/110651/sourceimages/#windx11/face_trm.ftex
livecpk/Faces/Asset/model/character/face/real/110651/sourceimages/#windx11/face_trm.ftex

640680 bytes each:
livecpk/Faces_v2/Asset/model/character/face/real/110651/sourceimages/#windx11/face_srm.ftex
livecpk/Faces/Asset/model/character/face/real/110651/sourceimages/#windx11/face_srm.ftex

849208 bytes each:
livecpk/Faces_v2/Asset/model/character/face/real/110651/sourceimages/#windx11/face_bsm_alp.ftex
livecpk/Faces/Asset/model/character/face/real/110651/sourceimages/#windx11/face_bsm_alp.ftex

目标删除Faces下的重复目录:

  • livecpk/Faces/Asset/model/character/face/real/153809
  • livecpk/Faces/Asset/model/character/face/real/110651

解决方案

方法1:基于fdupes结果批量删文件+清空目录

适合先精准删除重复文件,再自动清理空目录:

  1. 从fdupes输出中提取Faces目录下的重复文件,保存到临时文件:
    grep "livecpk/Faces/" fdupes_output.txt > to_delete.txt
    
    (将fdupes_output.txt替换为你实际保存fdupes结果的文件名)
  2. 批量删除这些重复文件:
    xargs rm -v < to_delete.txt
    
  3. 清理Faces下所有空目录(包括删除文件后变空的目标目录):
    find livecpk/Faces/ -type d -empty -delete
    

方法2:直接删除确认完全重复的子目录

如果已确认某个Faces子目录在Faces_v2中完全存在,可直接删除:

  1. 先验证目标目录在Faces_v2中是否存在:
    [ -d "livecpk/Faces_v2/Asset/model/character/face/real/153809" ] && echo "目录存在"
    
  2. 确认无误后删除目录及所有内容:
    rm -rf livecpk/Faces/Asset/model/character/face/real/153809
    rm -rf livecpk/Faces/Asset/model/character/face/real/110651
    
    注意:rm -rf会直接删除目录及所有内容,执行前务必确认目录内文件均为重复内容!

方法3:用rsync反向清理(安全批量处理)

适合批量处理所有重复内容,先在临时目录验证结果再替换原目录:

rsync -av --delete --compare-dest=../Faces_v2/ livecpk/Faces/ livecpk/temp_Faces/

参数说明:

  • --compare-dest=../Faces_v2/:以Faces_v2为基准对比重复内容
  • --delete:删除临时目录中与Faces_v2重复的文件和目录

执行完成后,temp_Faces中仅保留Faces独有的文件,检查无误后替换原目录:

rm -rf livecpk/Faces/ && mv livecpk/temp_Faces/ livecpk/Faces/

内容的提问来源于stack exchange,提问作者Liso

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 12:35:19