我正在尝试编写一个查找命令,该命令排除数字破折号的目录,但允许其他目录。
示例目录
./135888897-135954433/
./135888897-135954434/
./135888897-135954435/
./BLAG-DEF-JOB1/
./TOM-DEPLOYDEV-JOB1/
./FRANK-RELEASE-JOB1/
./STEVE-RELEASE-JOB1/
这是我的 find 命令的一部分。我似乎无法让它跳过数字目录。
find . -type f ! -regex '\./[0-9]+\-[0-9]+/*'
任何帮助都会很棒。谢谢!
最佳答案
您应该使用 .*
而不是 *
。
使用正则表达式时,*
表示“匹配前面的标记 0 次或多次”
这将产生以下命令:
find . -type f ! -regex '\./[0-9]+\-[0-9]+/.*'
更新:我还以为您忘记了在命令中转义 /
,但经过一些研究后,它似乎转义了 /
> 使用 find
命令时不需要。
关于regex - 查找排除包含数字破折号的目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44851748/