保持 XML 文件计数的作业

Nov*_*ser 5 linux files

我的朋友在一家 IT 公司工作,他需要在一个目录(包括子目录)中保存 XML 文件的数量。

然而,使用ls -LR | grep .xml或类似的计数需要很多时间,因为文件的数量以数百万计。

我在想什么是更好的方法?

某种后台进程是否可以解决这个问题,以便每当创建新文件或修改时间更改时,它都会影响计数器(文件数)?

Bra*_*ram 6

您描述的守护进程可以使用inotify

但也许使用findandwc -l已经足够快了?

我只运行了一个快速测试,但在我的系统上time ls -lR /mm/|grep -c jpg( real 0m2.168s) 和time find /mm -type f -name \*jpg|wc -l( real 0m0.397s)之间存在显着差异。两者都返回大约 42000 个文件,因此较大目录的差异可能会更大。

(我多次运行这两个命令以排除磁盘缓存影响。)