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

如何使用find命令仅输出包含.txt格式文件的目录路径

实现仅输出包含.txt文件目录的命令

符合需求的命令

find . -type d -exec sh -c 'ls -1 "{}"/*.txt > /dev/null 2>&1' \; -print

执行后只会输出直接包含.txt格式文件的目录路径,和你预期的输出结果一致。

参数说明

  • -type d:和你原有逻辑一致,仅遍历所有目录类型节点
  • -exec sh -c '...' \;:对每个遍历到的目录执行自定义校验逻辑,检查当前目录下是否存在.txt后缀文件,所有输出重定向到/dev/null避免多余信息打印
  • -print:仅当上述校验逻辑返回成功(即目录下存在.txt文件)时,打印该目录的路径
  • 命令默认兼容带空格、特殊字符的目录名场景

如果你需要放宽规则,只要目录的任意子层级存在.txt文件就算符合条件,可以使用以下效率更高的命令:

find . -type d -exec sh -c 'find "{}" -type f -name "*.txt" -print -quit | grep -q .' \; -print

内容的提问来源于stack exchange,提问作者Alejandro Vargas

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 16:57:05