С GNU sed:
find . -type f -print0 | xargs -0 sed -i /KeyWord/d
С OSX SED:
find . -type f -print0 | xargs -0 sed -i '' /KeyWord/d
Первая команда find находит все стандартные файлы (не каталоги, или каналы, и т.д.), Печатает их через \0 (поэтому имена файлов могут содержать пробелы, переводы строки и т.д.).
Вторая команда xargs читает вывод команды find , получает список на основе разделителя (\0 из-за -0), вызывает sed -i [...] с добавленными параметрами из списка (sed будет вызываться несколько раз, если есть много файлов, так как максимальная длина параметров ограничена в каждом вызове).
Команда sed изменяет на месте (-i).
Что касается /KeyWord/d , он удалит строки, содержащие регулярное выражение KeyWord .
Вы должны научиться sed правильно понимать (простой, но необычный) синтаксис и обращаться к соответствующим справочным страницам для получения дополнительной информации об используемых здесь инструментах.
И как мне нравится продвигать zsh , решение с его расширенными глобусами:
sed -i /KeyWord/d **/*(.)