Я ищу / заменяю множество файлов, и мне было интересно, может ли кто-нибудь порекомендовать хорошие инструменты для Windows. Я бы предпочел, чтобы они были бесплатными.
Спасибо
Вот что я использую:
для графического интерфейса grepWin: текст ссылки
для сверхбыстрой командной строки: gsar.exe из текст ссылки
Установить Cygwin, это бесплатно и дает Linux-подобную среду сценариев в Windows.
Поищите в справочных страницах команды, которые я здесь описываю (например, man find).
Перечислить файлы в каталоге (папке) с помощью,
find . -type f
## Note: you can also select files here (see the man page)
Используйте это для поиска в нескольких файлах, подобных этому,
grep -Hn pattern $(find . -type f)
Используйте его для замены таких файлов.
Создайте файл сценария (скажем) replace-in-files.sh
.
Напишите в файл следующее:
#!/bin/sh
# Sample script: replace-in-files.sh
for f in $(<find . -type f);
do
sed 's/pattern/replacement/g' $f > tmpFile.txt
mv tmpFile.txt $f;
done;
rm -f tmpFile.txt
Вот,
tmpFile.txt
должно быть какое-то временное имя (еще не существующее в каталоге).
И, pattern
регулярное выражение, которое вы хотите изменить с помощью replacement
.
Выполнить chmod a+x replace-in-files.sh
и файл становится исполняемым файлом, который можно запустить с терминала Cygwin с ./replace-in-files.sh
Вы можете создать там множество других требований.
Для поиска страниц руководства для таких команд, как sed
, find
, grep
вы также можете google
"manual sed" и т. д.
В Расширенное руководство по сценариям на Bash на сайте Linux Documentation Project можно найти хороший справочник, и большинство концепций работают под Cygwin. Также в конце есть Awk, sed ,riefs.
Хотя, вероятно, не так быстро, как вышеперечисленные параметры, в Notepad ++ есть хорошая функция поиска / замены с поддержкой RegEx.
Я бы пошел с Сигвином. Если это нежелательно, на http://unxutils.sourceforge.net/ вы можете найти несколько автономных утилит GNU, таких как sed, grep и find, перенесенных на Windows.
Я использовал Текст WorkBench какое-то время и думаю, что это фантастика. Он имеет множество полезных функций, включая планы пакетной замены, регулярные выражения, включение / исключение расширений файлов, редактирование файлов внутри приложения и т. Д.
Не бесплатно ... Думаю, это стоит около 40 долларов, но оно того стоит, учитывая время, которое оно позволяет сэкономить. Я ни в коем случае не связан с компанией, просто довольный клиент.