我正在试图找出如何使用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)
我应该修改什么?
以下被判断得太短而不能自己作为答案,但这就是我的意思:
^[^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)