Сложная (?) текстовая команда замены Unix

Что является командной строкой, эквивалентной из: Для каждого файла, который содержит "AAA" в его содержании, найдите "BBB" и замените его "CCC"

Таким образом команда соответствовала бы и заменила бы BBB в файле:

<html>
<head></head>
<body>
AAA
Hello world!
BBB    
</body>
</html>

Но Не в файле:

<html>
<head></head>
<body>
Don't match me!
BBB    
</body>
</html>

Заранее спасибо!

0
задан 24.10.2013, 18:30

1 ответ

Попробуйте что-то как:

grep -Rl AAA . | xargs sed -i -e 's/BBB/CCC/'
1
ответ дан 24.11.2019, 12:09

Теги

Похожие вопросы