该find
程序有一个-quit
命令行选项,它告诉它在找到匹配项并执行先前指定的命令(例如 )后立即退出-print
。这非常有用,但是如果我find
在多个根目录中,并且想要每个根目录中的第一个匹配项怎么办?
有没有一种说法可以这样说:
find foo bar baz -print -continue-with-next-root
?一些 shell 代码是可以的,但我想避免find
对每个根文件夹单独调用。
答案1
硬着头皮find
对每个根文件夹使用单独的调用。开销可以忽略不计,而且无论如何也没有这样的find
选择,所以你不妨:
for dir in dir1 dir2 dir2 ... dirN; do
find ... -quit
done
我真的不认为你会找到更好的解决方案。