目录“递归”上次修改日期

use*_*548 11 bash shell-script timestamps files

我想知道 linux bash 中的命令或函数来获取目录中最后修改的文件的时间戳(并可能格式化其输出)。

假设我有 /path/mydir 并且这个目录里面有一大堆文件。鉴于其路径,我想输出最近修改过的文件的时间戳。

我想该过程可以递归地执行 foreach 文件,检查所有文件并在每次找到更新的变量时使用最近的时间更新变量。

编辑:抱歉造成混乱,但我想使用 Epoch 时间戳:)

use*_*274 13

一种选择:使用 GNU find 递归遍历所有文件;打印带有文件路径的时间戳并按日期排序:

find /path/mydir -type f -printf "%T+\t%p\n" | sort | tail -1
Run Code Online (Sandbox Code Playgroud)

仅对于纪元时间戳,

find /path/mydir -type f -printf "%T@\n" | sort | tail -1
Run Code Online (Sandbox Code Playgroud)