我已经花了很多时间尝试这个问题。
查找命令结果与列表顺序无关。
如何从查找递归命令结果中基于创建日期和时间使用目录列表?
ls -lc
这很好,但不是递归的方式。
find . -type f -iname "*.txt" -exec ls -lc {} \;
这不起作用。
find . -type f -iname "*.txt" | sort -n
这也仅基于名称。
答案 0 :(得分:2)
https://superuser.com/q/294161/992527的解决方案与问题中的命令组合:
find . -type f -iname "*.txt" -printf "%T@ %Tc %p\n" | sort -n
有关命令的变化,请参见不同的答案。
从引用的问题引用的解释:
来自man find
的
printf
自变量:
%Tk
:文件的最后修改时间,格式为k
。
@
:格林尼治标准时间1970年1月1日00:00以来的秒数。
c
:语言环境的日期和时间(美国东部标准时间1989年11月4日12:02:33)。
%p
:文件名。
MacOS解决方案从@cooljobs的评论复制到问题中
find . -type f -iname "*.txt" -exec stat -f '%B %m %N' {} \; | rev | cut -d '/' -f 1 | rev | sort -n