gpt4 book ai didi

linux - 优化单行 find + exec 命令

转载 作者:太空狗 更新时间:2023-10-29 11:46:02 27 4
gpt4 key购买 nike

我需要获取系统上大约 100 万个文件的文件信息(名称、大小、修改日期)。我目前使用的命令是:

sudo find "$FULFILLMENT" "$ARCH1" "$ARCH2" "$MASTERING" -type f -exec ls -lT {} +

有什么办法可以改善吗?唯一的要求是我必须获取上述卷中的所有文件,并为每个文件提取名称、大小和修改日期。

(有没有办法在这里执行 stat 命令?这样会加快速度吗?)

这在光纤连接的机器上大约需要一个小时。

最佳答案

您可以使用 find 的内置打印,而不是将打印输出到 ls:

sudo find ... -type f -printf '%p      %s      %t\n'

我不确定那会快多少,但它节省了 ls 的 fork ,并且节省了第二次查询磁盘以通过 检索信息的麻烦ls 无论如何,find 已经有了,所以它至少应该 有点 更快。​​

(顺便说一下,您可以在 man find 中搜索 -printf 以获取有关这些格式字符串的更多信息。特别是,您可以自定义最后一个 -修改时间,您可以为其他字段指定显式字段宽度。)

关于linux - 优化单行 find + exec 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14595013/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com