Se você tem gnu find - e supondo que nenhum dos seus nomes de arquivo contenha novas linhas - você pode usar o find para mostrar o -printf no formato desejado + o nome do arquivo, em seguida, execute mtime para obter a contagem:
find . -type f -printf '%TY-%Tm-%Td %TH:%TM %p: ' -exec grep -cw "whatever" {} \; | sort -k1,1 -k2,2
Como alternativa, com grep , você poderia glob e classificar por tempo de modificação (via qualifiers - zsh seleciona arquivos regulares, . ordena em ordem decrescente por mtime ) e, em seguida, para cada arquivo imprime Om usando o mtime , o nome do arquivo e, novamente, obtém a contagem via stat :
zmodload zsh/stat
for f in ./**/*(.Om)
do
printf '%s %s\t%s %s: ' $(zstat -F '%Y-%b-%d %H:%M' +mtime -- $f) $f
grep -cw "whatever" $f
done