0
比方说,我有两个具有相同结构的目录,并且我希望将文件的时间戳设置为第一个文件的时间戳,当且仅当文件内容相同时。在目录上同步时间戳
我在这里给出了一个答案,但如果你们有更少的笨拙和更有效的方式来实现目标,那将是完美的。
比方说,我有两个具有相同结构的目录,并且我希望将文件的时间戳设置为第一个文件的时间戳,当且仅当文件内容相同时。在目录上同步时间戳
我在这里给出了一个答案,但如果你们有更少的笨拙和更有效的方式来实现目标,那将是完美的。
一个可能的解决方案是该脚本:
#!/bin/bash
OLDDIR=$(readlink -f $1)
NEWDIR=$(readlink -f $2)
cd $NEWDIR
for file in $(find .); do
file2=$OLDDIR/$file
if test -e "$file2" && diff >/dev/null -q "$file" "$file2" ; then
touch -r "$file2" "$file"
fi
done
一个更简单的方法就是:
rsync -uav /path/to/dir1/ /path/to/dir2
(除去v
抑制--verbose
输出)
注:的尾随'/'
followi ng dir1
。它告诉rsync
采取的内容的dir1
而不是dir1
本身。