我必须在很多目录中搜索 3 种类型的文件(我认为很容易 1k +?),其中一些文件的深度为 13 层。
installer.jar
Installpackage_*.jar
Patch_*.jar
现在我正在使用 find 命令;我排除了我能找到的任何文件路径,因此 find 命令不会遍历它之前搜索过的文件夹。我已将最大深度设置为 13(这是我能找到的最深)。但搜索仍然需要几个小时才能完成。知道如何缩短搜索时间吗?
Ps:抱歉,我没有发布我的脚本,因为我目前在家并且无法访问公司的电脑。
答案1
如果您的文件可由 读取others
,您可以使用locate
来快速找到它们。 Acronjob
应该locatedb
每天更新(或更多)。
这是一个例子:
$ time locate *.db
/etc/aliases.db
/usr/bin/lft.db
/usr/bin/traceproto.db
/usr/bin/traceroute6.db
/usr/bin/traceroute.db
/usr/sbin/tcptraceroute.db
/var/cache/dictionaries-common/aspell.db
/var/cache/dictionaries-common/hunspell.db
/var/cache/dictionaries-common/ispell.db
/var/cache/dictionaries-common/wordlist.db
[a lot of .db files]
...
real 0m0.036s
user 0m0.032s
sys 0m0.000s