regex - 通配符模式 : exclude a directory

标签 regex shell unix find glob

我有以下文件路径

/vol/form/various.txt
/vol/var/sender.py
/vol/var/hello.txt

我想获取所有包含form目录的.txt文件。例如,类似:

*.txt AND ! */form/*

执行此操作的正确通配模式是什么 - 即以单一模式(或者这是不可能的)?

最佳答案

像这样:

find /vol ! -path '*/form/*' -type f -name '*.txt'

如果您需要否定某个模式,例如使用正则表达式,据我所知,find -regex* 不支持环顾四周。因此,仅使用一个 find 正则表达式是不可能的。

关于regex - 通配符模式 : exclude a directory,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62627416/

相关文章:

regex - 将调节表达式转换为 DFA

regex - "not match"或反向的 Mongo 正则表达式

javascript - 如何在 bash 的另一个命令中使用一个命令的结果?

linux - 如何制作设备/套接字文件的副本

java - 正则表达式允许字符模式但不允许来自该模式的单个字符

Java正则表达式理解

regex - 如何在 sed 解释器脚本的 shebang 中使用 Posix 扩展正则表达式?

c++ - makefile 在 linux shell 脚本中编译可执行文件

linux - 基于字符串字段的 if 语句

regex - 如何使用 vi 删除文本文件中每行的前 5 个字符?