Escreva um script de shell que encontre-greps e produza nome de arquivo e conteúdo em uma linha

Para ver todos os arquivos php que contêm "abc", posso usar este script simples:

find . -name "*php" -exec grep -l abc {} \;

Eu posso omitir o -l e eu sou extraído alguma parte do conteúdo em vez dos nomes de arquivos como resultado:

find . -name "*php" -exec grep abc {} \;

O que eu gostaria agora é de uma versão que faça as duas coisas ao mesmo tempo, mas na mesma linha.

Produção esperada:

path1/filename1: lorem abc ipsum
path2/filename2: ipsum abc lorem
path3/filename3: non abc quod

Mais ou menos comogrep abc * faz.

Editar: Eu quero usar isso como um script de shell simples. Seria ótimo se a saída estivesse em uma linha, assim seria possível mais grepping. Mas não é necessário que o script é apenas uma linha, eu estou colocando em um arquivo de script bash de qualquer maneira.

Editar 2: Mais tarde eu encontrei "ack", que é uma ótima ferramenta e eu uso isso agora na maioria dos casos, em vez de grep. Isso tudo e mais.http://betterthangrep.com/ Você escreveriaack --php --nogroup abc para obter o resultado desejado

questionAnswers(3)

yourAnswerToTheQuestion