Вопрос Linux: найдите все вхождения «string1» в файлах под каталогом и замените их на «string2»


В linux, что является хорошим способом найти все вхождения «string1» в файлы под каталогом и заменить их на «string2»?


3
2017-07-29 22:55


происхождения




ответы:


Достаточно простой. Используйте sed с файловым расширением. Если вы не имеете в виду все файлы в каталоге и подкаталоги?

sed -i 's/string1/string2/g' /path_to_dir/*

Редактировать: В случае буквально все по каталогу

find /path_to_dir/ -type f -exec sed -i 's/string1/string2/g' '{}' +

7
2017-07-29 23:25