Поиск и замена текста в большом количестве файлов
Время от времени вебмастерам приходится сталкиваться с проблемой замены фрагментов текста или программного кода в большом количестве файлов. Раньше для этих целей я применял различные простенькие программы или делал это в Macromedia Dreamweaver. Но на днях мне попалась программа PowerGREP.
PowerGREP — это мощная программа для поиска и замены текста в файлах обладающая мощным функционалом. При первом запуске можно опешить от обилия окошек, меню, опций и т.д.
Но привыкнув к интерфейсу и разобравшись методом научного тыка, где искать нужные функции, начинаешь понимать какой матёрый зверь попался в руки. Из наиболее полезных функций, которые я использовал и оценил, отмечу следующие:
- Возможность отменить произведенные изменения в файлах. Причем это можно сделать даже после того как вы начали работать с другими файлами или вообще уже закрывали программу. Все внесенные изменения сохраняются в истории изменений (Undo history) и любой пункт можно отменить. Это потрясающая возможность которую я раньше не встречал в подобных программах. Бекапы хранятся в указанной вами папке. Папка для хранения выбирается в главном окне в пункте «Backup file destination type:». Советую выбрать пункт «Single folder» и в следующем окне выбрать отдельную папку для хранения бекапов с изменениями. Если этого не сделать, то по умолчанию бекапы будут хранится в той же папке, что и изменяемые файлы.
- Простой и лёгкий выбор папок в которых следует искать файлы. Причем можно выбрать — искать только в корне выбранной папки или в подпапках то же. Можно легко выбрать весь диск, но исключить отдельные папки или файлы. А можно выбрать множество папок на разных дисках.
- Лёгкий доступ к истории вводимых запросов. Т.е. в окне поиска или замены можно выбрать ранее вводимый текст и быстро его отредактировать. Эта функция экономит уйму времени при похожих запросах на поиск и замену.
Остальное множество функций сразу может и не понадобиться, но они не менее интересны. К примеру есть возможность производить поиск с использованием регулярных выражений. Эти выражения можно составлять вручную либо с использованием дополнительного платного модуля RegexMagic. Синтакс написания выражений базируется на языке Perl.
При включении режима «поиска и замены» (Search and replace) по умолчанию задействована опция поиска (Search type) с помощью регулярных выражений (Regular expression). Советую сразу поменять эту опцию на Literal text иначе любая квадратная скобка или знак «*» будет трактоваться как часть регулярного выражения и вы не сможете понять почему программа не находит нужный фрагмент. Так было со мной, т.к. в нужном мне для поиска коде содержались квадратные скобки [ ].
Пожалуй это всё, что я хотел бы рассказать о замечательной программе PowerGREP.