Поиск и замена полной строки в рекурсивных файлах

Поиск и замена полной строки в рекурсивных файлах

Я использую:

grep -n -H -o -R -e textword .

Рекурсивно вывести список всех файлов в каталоге «.» со строкой «textword» и показать файл, строку и только соответствующую часть.

Мне нужно удалить строки, соответствующие тексту, с помощью команды Linux.

решение1

find . -type f -exec sed -r -i "/textword/d" {} +

Помните, что текст поиска интерпретируется как регулярное выражение sed-rопцией), поэтому его может потребоваться экранировать.

Используется sed -i.backupдля резервного копирования исходных файлов в формате <filename>.backup.

решение2

С GNU findвы sedможете:

find . -type f -print0 | xargs -0 sed -i '/^FIND$/d'

Связанный контент