我正在开发一个类似 Dropbox 的小型 bash 脚本,如何在不使用rsync 的情况下比较 2 个文件的日期并用新文件替换旧文件有没有简单的方法来处理这个?SHA1可以帮助我了解更新吗?
问问题
39956 次
4 回答
117
test
您可以使用-nt
(newer than) 和-ot
(older than) 运算符比较文件修改时间:
if [ "$file1" -ot "$file2" ]; then
cp -f "$file2" "$file1"
fi
于 2013-02-10T21:35:27.200 回答
9
这是一个POSIX解决方案:
find -name file2 -newer file1
于 2017-01-29T20:16:25.207 回答
5
或者更短更好看,看看man stat
:
stat -c %y file
于 2016-04-22T13:35:21.983 回答
2
怎么样
stat file|awk -F': ' '/Modify: /{print $2}'
于 2013-02-10T21:35:25.320 回答