在完整路径中最多包含两个"a"个字符的文件

Can*_*Can 1 regex awk

我正在试图找出如何使用AWK查找在其完整路径中最多包含两个"a"字符的文件.

以下是我到目前为止所做的,但它没有完成这项工作.

BEGIN{}

{
if( match( $1, ".*[a].*[a].*[^a]+" ) )
print $1
}

END{}
Run Code Online (Sandbox Code Playgroud)

它通过以下命令单独创建的名为"data"的文件读取文件名及其完整路径.

find / -name '*'
Run Code Online (Sandbox Code Playgroud)

我应该修改什么?

ric*_*ici 6

以下被判断得太短而不能自己作为答案,但这就是我的意思:

^[^a]*(a[^a]*(a[^a]*)?)?$
Run Code Online (Sandbox Code Playgroud)

顺便说一句,你不需要awk.grep -E会工作得很好.

但是现在我想起来了,如果你打算使用awk,下面的内容就更简单了:

awk '!/a.*a.*a/'
Run Code Online (Sandbox Code Playgroud)