pseudo-código rápido, sem tentar criar um script real - quero ter certeza de que entendi as perguntas. Além disso, suponha que os nomes de arquivos bem comportados (se necessário, reforcem o script final para lidar com nomes de arquivos com caracteres de controle, etc.).
# get output.log files in directories containing BBB file and search output.log
find /start -name 'BBB*' -type f -print |\
while read f; do echo $(dirname $f)/output.log; done |\
xargs grep search-string
Isso faz com que você esteja no caminho certo?