Вопрос: Замена одинаковых строчек в куче файлов
Рубрика: Вопросы и ответы
25 Мар. 2010
Сегодня в пять утра пришлось ручками (через Zend) менять ссылки типа "test.html" на "http://ttt.ru/super_test.php" в примерно 2000 html файликах. Все это дело заняло примерно два часа и пальцы уже ненавидят комбинацию Ctrl + H :)
К сожалению, времени искать инструмент который занимался бы этим автоматически - не было. :( Если кто знает похожий скрипт - буду очень благодарен.
п.с. Конечно написать на пхп не проблема, но может кто уже встречал готовое решение.
Если хотите опубликовать этот материал у себя - пожалуйста, разместите ссылку на страницу откуда вы его взяли.
- Эта статья устарела т.к. была написана для yii версии 1.0.х; Если вы используете более новую версию - у вас могут ... "Урок 8 : Подключаем дизайн"
- Что то подвис я на ошибке "Column name must be either a string or an array." когда пробовал делать update ... "Column name must be either a string or an array"
- Если вы хорошо знакомы с языком SQL, то наверняка любите использовать всякие встроенные функции для упрощения жизни. Сегодня мы с ... "Используем функции SQL или заметка про CDbExpression"

[guest] Morfi
Было сказано: Четверг, 25 Март 2010
У любого IDE есть автозамена по всем файлам проекта.

[adm] zolter
Было сказано: Четверг, 25 Март 2010
Ну вот в Zend-е есть поиск по файлу с заменой, но нету поиска по всем файлам в каталоге и заменой там. В 5.5 не нашел ( Т.е. все равно приходится открывать каждый файл

[adm] zolter
Было сказано: Четверг, 25 Март 2010
А нетбинс это делает не закачивая файлы на комп? Т.е. сразу по фтп
То помню в свое время нетбинс при создании проекта выкачивал все содержимое на комп и работал с локальной версией.
Хотя это конечно лучше чем руками :) Спасибо, посмотрю

[guest] dec5e
Было сказано: Четверг, 25 Март 2010
В PhpStorm тоже есть диалог Replace In Path.
Если нет в Ide, можно попробовать эту программу http://softwaremaniacs.org/soft/tr/. Наткнулся на нее когда-то, но сам не пробовал.

[adm] zolter
Было сказано: Четверг, 25 Март 2010
Оо, это интересно. Спасибо!
То думаю мне еще предстоит намучатся с этим html сайтом :)

[guest] AngryCAT
Было сказано: Четверг, 25 Март 2010
В Notepad++ есть замена по всем файлам в папке, включая вложенные. Плюс поддерживается RegExp

[guest] Porcelanosa
Было сказано: Четверг, 25 Март 2010
в EmEditor можно выбрать папку и (если надо) вложенные папки и заменить все + еще и бэкап изменений можно сделать в отдельную папочку

[guest] zadoev
Было сказано: Четверг, 25 Март 2010
find . -name \*.html | xargs perl -i.orig -pe "s#test\.html#http://host/test\.html#g"
++ в том что можно выполнить на удаленном серваке в секунды.
-- в том что лучше от таких массовых замен хоть в ide хоть не в ide избегать
Я всегда предпочитаю делать такие замены руками ну и слежу чтобы в vcs мог после этого откатиться ( все файлы перед заменой закоммичены)

[adm] zolter
Было сказано: Четверг, 25 Март 2010
Спасибо всем большое, я теперь буду знать в будущем как облегчить себе жизнь. Надеюсь остальным читателям блога тоже пригодится и каждый выберет для себя удобный вариант!

[guest] Гость
Было сказано: Пятница, 26 Март 2010
Это сколько надо терпения чтобы два часа заменять одни и те же строчки. Подобный скрипт на php пишется десять, пятнадцать минут.

[adm] zolter
Было сказано: Пятница, 26 Март 2010
to Гость
в пять утра подобные физические действия человек не думает о написании скрипта к сожалению :) просто когда начинал - не знал что там такой объем файлов

[guest] Гость
Было сказано: Суббота, 12 Июнь 2010
Пакетное редактирование есть в notepad++, ultra edit... Не надо IDE!

[guest] Одиночка Айс
Было сказано: Понедельник, 06 Сентябрь 2010
Уже поздно, но все же))) PSPad - замена в файлах - и всего делов )))

[guest] alphard
Было сказано: Пятница, 29 Октябрь 2010
Здравствуйте! А вы не пробовали пользоваться переменными? (:


