Примерно так:
find * -printf 'echo "$(grep -o "hello" %p | wc -l) %p";' | sh
output:
3 newfile
2 somefile
Альтернатива, если выше не работает
for var in `ls`;do echo $var; grep -o "hello" $var|wc -l;done
Output:
newfile
3
somefile
2
some.py
0
Если предположить, что wc отсутствует, как предлагается в комментариях к этому ответу, приведенная ниже команда может бытьused.
for var in `ls`;do echo $var;grep -o "hello" $var|grep -c "hello";done
Будет выдавать тот же вывод, что и последняя команда