linux命令行,如何删除某个指定目录A内与另一个或多个目录B重复的文件? 目录B内的文件保留 fdupes貌似不能指定只删除A的
拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...
查了几十个网页,找到这个接近满意的解决方案http://unix.stackexchange.com/questions/146197/fdupes-delete-files-aft...
不过正则里面的叹号好像不能起到清除空行的效果,改为d; fdupes --recurse A/ B/ | sed '/^A/d; /^$/d; s/.*/"&"/' | xargs rm
但还有个小问题,如果A里面有重复的文件,但这文件不在B中,fdupes也是会列为结果,导致误删,要再想想
查了几十个网页,找到这个接近满意的解决方案
http://unix.stackexchange.com/questions/146197/fdupes-delete-files-aft...
不过正则里面的叹号好像不能起到清除空行的效果,改为d;
fdupes --recurse A/ B/ | sed '/^A/d; /^$/d; s/.*/"&"/' | xargs rm
但还有个小问题,如果A里面有重复的文件,但这文件不在B中,fdupes也是会列为结果,导致误删,要再想想