移动目录而不修改时间戳

移动目录而不修改时间戳

我想将目录从一个位置移动到另一个位置,但是当我这样做时,我可以看到时间戳发生了变化。有什么办法可以保留原始时间戳吗?

已查看其手册页,mv但找不到任何现有选项。

答案1

使用cp如下,mv不行。

cp -r -p /path/to/sourceDirectory /path/to/destination/

来自男人cp:

-p
    same as --preserve=mode,ownership,timestamps
--preserve[=ATTR_LIST]
    preserve the specified attributes (default: mode,ownership,timestamps), if possible additional attributes: context, links, xattr, all

然后复制完成后删除 源目录

答案2

在 Linux 上,这是有效的:

timestamp=$(stat -c %y foldername)
mv foldername new_foldername
touch -d "$timestamp" new_foldername

stat -c %y命令以可读形式返回文件夹的修改日期。该值将被保留并与命令一起使用touch -d "$timestamp"来设置新文件夹的时间。

相关内容