You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SLES 15中使用find命令搜索可执行文件时排除/.snapshots目录的解决方案

SLES 15中使用find命令搜索可执行文件时排除/.snapshots目录的解决方案

我完全懂你现在的困扰——在SLES上用find查找名为pxe的可执行文件时,/.snapshots目录总是跳出文件系统循环的报错,而且之前尝试的排除参数根本没起作用对吧?

其实问题出在你之前命令里参数的顺序上:你把-print放在了排除条件的前面,这就导致find先把内容打印出来,再去判断要不要排除,所以循环提示还是会出现,排除逻辑也没生效。调整一下参数顺序,或者用更高效的-prune参数就能解决。

给你两个可行的解决方案:

方案一:调整排除条件的位置

把排除/.snapshots目录的条件放在最前面,让find先跳过这个目录下的所有内容,再去查找符合要求的文件:

find / -type f -not -path "*/.snapshots/*" -executable -print | grep pxe$

这样运行后,就不会再出现文件系统循环的提示,而且只会输出你需要的那些pxe文件路径。

方案二:用-prune直接跳过整个目录(更推荐)

-prune参数可以让find直接跳过指定的目录,不会进去遍历任何内容,不仅能解决循环问题,还能提升搜索速度:

find / -path "*/.snapshots" -prune -o -type f -executable -print | grep pxe$

这里的逻辑是:如果找到/.snapshots目录,就用-prune跳过它;否则(-o表示“或”),就执行后面的查找可执行文件并打印的操作。

你可以试试这两个命令,应该就能完美解决你的问题了。

备注:内容来源于stack exchange,提问作者redpy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.22 14:54:36