我有三个目录.我想将directory1与directory2进行比较,然后进行这些更改/新文件并将其复制到directory3.有没有简单的方法可以做到这一点,也许是通过使用linux diff和cp命令?我愿意接受想法.
谢谢!
安德鲁
解决方法:
我相信这就是您想要的描述.
for file in dir2/*; do
file_in_dir1=dir1/$(basename ${file})
if [ ! -e ${file_in_dir1} ]; then
# If the file in dir2 does not exist in dir1, copy
cp ${file} dir3
elif ! diff ${file} ${file_in_dir1}; then
# if the file in dir2 is different then the one in dir1, copy
cp ${file} dir3
fi
done
我不确定的一件事是,如果文件存在于dir1而不是dir2中,那么您想要的是什么.