A sintaxe padrão (POSIX) é:
find /path/to/parent -type f -exec grep 'XXX' /dev/null {} +
(o /dev/null é para garantir que grep sempre imprima um nome de arquivo). Isso funcionará em todos os sistemas POSIX, incluindo o Solaris. Os únicos sistemas pós-90 conhecidos onde é sabido que não funcionam são sistemas GNU antigos (muito antigos).
O GNU inicialmente introduziu uma predicção -print0 e uma -0 em xargs em vez disso:
find /path/to/parent -type f -print0 | xargs -0 grep 'XXX' /dev/null
Existem agora algumas outras implementações que suportam isso, mas não o Solaris.
Acima, em teoria, você desejaria adicionar a opção -r para evitar a execução de grep se não houvesse arquivo, mas não é tão portátil e, nesse caso específico, não faz uma diferença funcional