如何获取在 OS X 中按修改日期排序的命令行“查找”找到的文件?

zad*_*dam 13 terminal find macos

使用 Mac OS X 终端,如何编写find按修改日期(最近在前)对结果进行排序的命令?

已经有类似的问题,但它们指的是GNUfind和POSIX,但我不知道Mac OS X是GNU还是POSIX还是其他什么。

slh*_*hck 18

OS X 完全符合POSIX

这样的事情应该做:

find . -type f -name "*.txt" -print0 | xargs -0 ls -tl
Run Code Online (Sandbox Code Playgroud)

一些注意事项:

  • 中的-t选项ls将按 排序mtime
  • xargs用于将文件名作为参数传递给ls. 请注意,如果文件名中包含空格,则必须使用-print0infind-0in xargs。而且,参数的最大数量由限制ARG_MAX变量。要找出它们的数量,请输入getconf ARG_MAX
  • 您可以提供-r反转排序顺序(→最旧的文件优先)
  • 其他findls选项 - 像往常一样 - 在手册(man findman ls)中概述。


归档时间:

查看次数:

9917 次

最近记录:

13 年,8 月 前