2

对于我正在开发的网站,我希望能够在每晚进行 git 提交时自动更新页脚中的“此页面上次修改:”部分。本质上,我计划编写一个在每晚午夜运行的 shell 脚本,它将完成我所有的常规服务器维护。大多数这些任务我已经知道如何自动化,但是我有一个文件 (footer.php),它包含在每个页面中,并显示了网站上次更新的日期。我希望能够递归地查看我的网站并检查每个文件的时间戳,然后如果其中任何一个在 footer.php 中的日期之后被编辑,我想更新这个日期。

我所需要的只是一个 UNIX 命令,它将递归地遍历我的文件并仅返回最后修改的日期。我不需要文件名或进行了哪些更改,我只需要知道最近更新的文件被更改的一天(希望是时间)。

我知道使用“ls -l”和“cut”我可以遍历每个文件夹来执行此操作,但我希望有一个更快运行和更简单的命令。最好是单行 shell 命令(可能带有 -R 参数)

4

3 回答 3

2

findUnix格式输出所有访问时间,然后排序并取最大。转换为所需的任何日期格式留给读者作为练习:

find /path -type f -iname "*.php" -printf "%T@" | sort -n | tail -1
于 2010-08-06T16:18:24.037 回答
1

GNU 查找

find /path -type -f -iname "*.php" -printf "%T+"

检查 find 手册页以使用其他 -printf 说明符。

于 2010-08-06T16:11:40.840 回答
0

您可能希望查看每次修改任何其他文件时更新页脚的 inotify 脚本,而不是在整个文件系统中查找新更新。

于 2010-08-06T16:08:24.030 回答