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

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

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

решение1

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

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

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

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

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