我想重现ls --full-time
Perl 脚本的输出,以避免调用ls
数千次的开销。我希望使用stat函数并从那里获取所有信息。但是, ls 输出中的时间戳使用高分辨率时钟,因此它也包括纳秒数(根据 GNU 文档,这是因为 --full-time 等同于--format=long --time-style=full-iso
,而 full-iso 时间样式包括纳秒)。
我遇到了Time::HiRes模块,它覆盖了标准 stat 函数,它返回 atime/mtime/ctime 作为浮点数,但没有覆盖lstat。这是一个问题,因为在符号链接上调用 stat 返回链接文件的信息,而不是链接本身的信息。
所以我的问题是——我在哪里可以找到与 Time::HiRes::stat 一样返回 atime/mtime/ctime 的 lstat 版本?如果做不到这一点,是否有另一种方法可以获取高分辨率符号链接的 modtime(调用 ls 除外)。