@freeman0204

Как заменить в всех файлах проекта, фразу например, через ftp (деплой)?

Работаю с atom там есть подобный поиск, но не понятно как ищет и если я заменяю то изменений нет. Какие есть варианты?
  • Вопрос задан
  • 926 просмотров
Решения вопроса 2
yarkov
@yarkov
Помог ответ? Отметь решением.
Синхронизируете каталог на сервере с локальным. Потом делаете массовую замену в локальном каталоге и синхронизируете с каталогом на сервере.
Я так и не нашел способа заставить SFTP искать и менять в файлах сразу на сервере.
Ответ написан
Комментировать
@jimquery
Через ftp не знаю, если только поддержка shell-команд есть. Можно использовать утилиты командной строки. С помощью grep получить список файлов:
grep -lR "искомая фраза" /var/www/deploy/
С помощью sed произвести замену:
sed -i -- 's/фраза для поиска/на что менять/' /var/www/deploy/../kakoy-to.file

Можно использовать регулярные выражения в обоих командах.
Ещё такой момент: если в искомых файлах фраза встречается несколько раз, то при замене нужно вызывать sed с глобальной опцией:
sed -i -- 's/фраза для поиска/на что менять/g' /var/www/deploy/../kakoy-to.file

Так же можно объединить эти команды для конвейерной обработки:
sed -i -- 's/фраза для поиска/на что менять/g' $(grep -lR "фраза для поиска" /var/www/deploy/)

Или просто указать маску для файлов, в которых нужно произвести замену:
sed -i -- 's/фраза для поиска/на что менять/g' *.php
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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