1) Вы должны замаскировать * index * jsp.В противном случае оболочка разрешит его, и если у вас получится файл a-index-0.jsp, поиск будет сопоставлен с этой заменой.,
find . -type f -iname "*index*jsp" | xargs ls -t | xargs grep body
3) find имеет возможность вызывать внешние программы с помощью -exec;не нужно звонить xargs по трубе.
find . -type f -iname "*index*jsp" -exec ls -t {} ";" -exec grep -n body {} ";"
4) Форматирование вывода find может быть выполнено самим find - cTime, mTime и breakfeasttime.;) Посмотрите на себя (man find), чтобы найти множество опций -printf, особенно для времен.
find tmp -type f -iname "*index*jsp" -printf "%H/%f\t %CD\t" -exec grep -n body {} ";"
5) Почему?
Если в вашей находке, как и в GNU-find, есть эти опции, вам не нужно очищать от пробелов в именах файлов.Пробелы в именах файлов трудно обрабатывать - find -print0 | xargs ...
может это сделать, но вам не нужно это делать, если вы остаетесь в поиске.Но если вы вызовете «ls», вы потерялись.
Возможно, ваша текущая команда не выдаст файл с пробелами / символами новой строки / табуляцией в имени.Хорошо.Но изучение лучшего пути и постоянное общение с ним предотвращают ошибки позже и для других.