我想使用find
但像 一样按时间顺序对结果进行反向排序ls -ltr
。这是否可以通过标志或管道的任何组合来实现?
答案1
使用find
的-printf
命令输出时间(以可排序的方式)和文件,然后排序。如果你使用 GNU find,
find . your-options -printf "%T+ %p\n" | sort
-printf "%T+ %p\n"
为了方便起见,这里对from进行解释man find
:
%Tk
文件的最后修改时间,格式为 指定k
,与 相同%A
。- 在这种情况下
k
设置为+
+
日期和时间,以 分隔+
,例如“2004-04-28+22:22:05.0”。这是一个 GNU 扩展。时间以当前时区给出(可能会受到设置 TZ 环境变量的影响)。秒字段包括小数部分。
- 在这种情况下
%p
文件名。
答案2
如果这只是一个深度为 n(假设深度为 2)的文件夹层次结构,我发现这个很有用:
ls -laht --full-time */*