问题:列出一个目录(和子目录)中的所有文件(带有完整路径),按访问时间排序

我想构建一个 Linux 命令来列出按访问时间排序的特定目录(和子目录)中的所有文件(及其完整路径)。

ls 可以按访问时间排序,但不提供完整路径。 find 给出了完整路径,但您对访问时间的唯一控制是使用 -atime N 指定一个范围(至少在 24*N 小时前访问过),这不是我想要的。

有没有办法按访问时间排序并立即获得完整路径?我可以只写一个脚本,但似乎应该有一种方法可以用标准的 Linux 程序来做到这一点。

解答

find . -type f -exec ls -l {} \; 2> /dev/null | sort -t' ' -k +6,6 -k +7,7

这将找到所有文件,并按日期和时间对它们进行排序。然后,您可以使用awkcutls -l输出中提取日期和文件名

Logo