比较2个文件夹并查找不同的文件,并使用unix命令将不同的文件单独移动到另一个文件夹

时间:2015-01-23 11:05:37

标签: shell unix scripting

我有2个文件夹AABBAA包含2个文件:

1.txt
2.txt

BB包含3个文件:

1.txt
2.txt
3.txt

我需要使用Unix shell脚本将任何只在其中一个目录中的文件移动到另一个目录CC

在真实场景中,我需要能够处理大量文件。

1 个答案:

答案 0 :(得分:0)

这应该移动仅存在于其中一个目录中的文件(未经测试;如果您有简单路径,它将工作;即没有空格或特殊字符):

for path in $(diff -qr AA BB | grep 'Only in' | sed -e 's/^Only in //;s/: /\//')
do
    echo "$path" CC/
done

如果打印出正确的路径,请将echo替换为mv