修改整个子目录的创建和最后修改日期

修改整个子目录的创建和最后修改日期

这只是一个问题,因为一些老旧软件存在 Y2K 问题,我需要将文件创建日期从 1990 年代移到 2000 年,但文件跨 21 个子目录。我正在寻找一种递归管理它的方法。

这最终会以 NFS 共享的形式返回到 MSDOS 客户端,并且它似乎使用的是创建日期。而不是修改日期,因为我已经尝试过触摸模式,但没有成功。

答案1

您可以使用以下命令更改目标目录下所有文件和目录的修改时间:

find /target/dir -exec touch -m {} +

这会将修改时间设置为今天。您也可以将其设置为您选择的特定日期:

find /target/dir -exec touch -m -d '1/1/2000' {} +

我真的怀疑你是否需要修改创建日期,因为它们在 Linux 中并不常用(见[1][2][3]) 内核甚至没有提供轻松访问它的方法。

相关内容