Я использую:
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'