gpt4 book ai didi

linux - 用旧的相同副本替换每个文件的时间戳

转载 作者:太空宇宙 更新时间:2023-11-04 13:00:16 24 4
gpt4 key购买 nike

如果文件存在于 bash 脚本的两个目录中,我如何能够比较两个目录的文件并替换它们的时间戳?例如,我在 Directory1 中有 file1.txt ,在 Directory2 中有 file1.txt (目录作为参数给出)具有不同的时间戳,我想用旧的替换较新的时间戳。我该怎么做?

我已经知道我应该为此使用 touch 命令 ( https://askubuntu.com/questions/62492/how-can-i-change-the-date-modified-created-of-a-file ),并且还使用 -nt 和 -ot ( compare file's date bash ) 来比较文件,但由于我对脚本编写还很陌生,我在弄清楚如何将所有这些放在一起时遇到了一些麻烦。

最佳答案

备份您的文件。试试这个:

cd "$1"
for i in *; do
if [[ -e ../$2/$i ]]; then
if [[ $i -ot ../$2/$i ]]; then
touch -r "$i" "../$2/$i"
else
touch -r "../$2/$i" "$i"
fi
fi
done

关于linux - 用旧的相同副本替换每个文件的时间戳,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34117404/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com