You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多
文档控制台
免费开始使用

如何使用find命令查找除Dev开头外的所有.txt格式文件?

正确的find命令写法

没问题,我帮你调整命令来实现“查找所有.txt文件,排除文件名以Dev开头的”需求,这里有两种实用的写法:

推荐写法(直观易读)

这种方式用基础的-name匹配和取反操作,逻辑清晰,容易维护:

find . -type f -name '*.txt' ! -name 'Dev*.txt' -print0

各部分解释:

  • -type f:可选但推荐,确保只查找文件(避免匹配名称带.txt的目录)
  • -name '*.txt':匹配所有后缀为.txt的文件
  • ! -name 'Dev*.txt'排除所有文件名以Dev开头的.txt文件
  • -print0:保留你原本的空字符分隔输出格式,完美适配带空格、特殊字符的文件名场景

正则表达式写法(适合复杂匹配场景)

如果你更倾向用正则来实现,也可以这样写(需指定正则扩展语法以支持负向预查):

find . -type f -regextype posix-extended -regex '.*/(?!Dev).*\.txt$' -print0

这里(?!Dev)是负向预查语法,表示文件名开头不能是Dev-regextype posix-extended用来让find识别这种正则规则。

内容的提问来源于stack exchange,提问作者D.Rude

火山引擎 最新活动