#!/bin/bash
s='abbaxabaxabbax
abbax
abaxabbax
abbax ab a x abbax xxxxx
abbax a abbax a abbax a'
grep 'abbax.*abbax' <<< "$s" | grep -v 'abbax.*abbax.*abbax'
echo "А теперь регулярное выражение PCRE с использованием GNU grep:"
grep -P '^(?!(.*abbax){3})(?:.*?abbax){2}' <<< "$s"
IyEvYmluL2Jhc2gKcz0nYWJiYXhhYmF4YWJiYXgKYWJiYXgKYWJheGFiYmF4CmFiYmF4IGFiIGEgeCBhYmJheCB4eHh4eAphYmJheCBhIGFiYmF4IGEgYWJiYXggYScKZ3JlcCAnYWJiYXguKmFiYmF4JyA8PDwgIiRzIiB8IGdyZXAgLXYgJ2FiYmF4LiphYmJheC4qYWJiYXgnCmVjaG8gItCQINGC0LXQv9C10YDRjCDRgNC10LPRg9C70Y/RgNC90L7QtSDQstGL0YDQsNC20LXQvdC40LUgUENSRSDRgSDQuNGB0L/QvtC70YzQt9C+0LLQsNC90LjQtdC8IEdOVSBncmVwOiIKZ3JlcCAtUCAnXig/ISguKmFiYmF4KXszfSkoPzouKj9hYmJheCl7Mn0nIDw8PCAiJHMi