@ynashyvan

Как найти и заменить текст в файлах в Linux?

Я нашел команду, которая выводит все совпадения в файлах в консоль.
Например, этот код находит все совпадения mail1@gmail.com в директории website.com/ :
grep -rnw 'website.com/' -e 'mail1@gmail.com'
Как можно найти почту mail1@gmail.com и заменить ее на mail2@gmail.com во всех файлах сразу?
  • Вопрос задан
  • 192 просмотра
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
find website.com -exec sed -i 's/mail1@gmail.com/mail2@gmail.com/' {} \;
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
paran0id
@paran0id Куратор тега Linux
Умный, но ленивый
При помощи sed
Ответ написан
Комментировать
@klltmchn
grep -rl 'mail1@gmail.com' | sed -i -e 's#mail1@gmail.com#mail2@gmail.com#g'
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы