Обсуждение:Консольная программа поиска и замены строк в текстовых файлах.
0 (0)
Обсуждение:Консольная программа поиска и замены строк в текстовых файлах. ( Обсуждение примера 16.11.2012 11:10 )
0(0)Консольная программа поиска и замены строк в текстовых файлах.
FR_Str.exe[ ] [ ]
path_in - путь поиска файлов.
mask - маска для файлов поиска. Например *.mac
string_search - строка поиска.
path_out - путь для копирования найденных файлов. Если не указано, то будет только лог поиска (в консоли).
string_replace - строка замены.
Пример поиска строки без копирования файлов.
FR_Str.exe D:\WORK\*.mac "47426" >list.log
Пример поиска строки с копированием файлов.
FR_Str.exe D:\WORK\*.mac "47426" F:\WORK\
Пример поиска и замены строки с копированием файлов.
FR_Str.exe D:\WORK\*.mac "47426" F:\WORK\ "47425" >list.log
Посмотреть пример
>> Ответитьновое это хорошо забытое старое :) ( sdo 04.12.2012 14:15 )
0(0)есть еще munge от microsoft (искать здесь http://www.petri.co.il/download_free_reskit_tools.htm)
всем хорошая консольная программа замены контекста с маленьким глюком (фичей) - даваемый ей файл с параметрами не должен завершаться переводом строки
>> Ответитьеще есть CHGSTR.EXE давно еще под цитриксом на сайте citrix.pp.ru - там в разделе утилиты консольные ( KaMPiLeR 04.12.2012 18:09 )
0(0)Not specified
>> Ответить
А слабо прямо в cmd файле без стороннего exeшника? ( deusex 05.12.2012 10:45 )
0(0)Not specified
>> ОтветитьУточнение ( pam 05.12.2012 13:18 )
0(0)1. Копирует с сохранением структуры каталогов.
2. Определяет кодировку (DOS, WIN).
Не слабо, однако.
>> Ответитьmunge тоже прекрасно сохраняет структуру каталогов ( sdo 05.12.2012 13:51 )
0(0)Я бы вообще не считал программу достойной упоминания, если бы она корежила структуру.
насчет кодировки не очень понятно, что имеется в виду.
Утилита замены решает задачу подмены одного фрагмента текста на другие, то есть одну последовательность байтов (без нулевого и переводов строки) на другие. И неважно, как выглядят в разных кодировках байты этих последовательностей.
Если нужно будет параллельно! с основной заменой текста в иной кодировке, это уже частный случай задачи и решается он довольно просто при формировании списка замены:
@echo "{кодировка DOS}" "zamena_example1" >> munge_replace.ini
@iconv -f cp866 -t cp1251 munge_replace.ini >> munge_replace.ini
К тому же в наше время упоминая кодировки следует быть готовым к вопросу о utf8 :)
>> Ответить
примеры в студию! :) ( sdo 05.12.2012 13:57 )
0(0)я смог только заменить один символ (и то не каждый символ так легко будет заменять):
и только один раз в строке
echo qwe-rty > minus
for /F "delims=- tokens=1,*" %i in (minus) do echo %i+%j > plus
>> ОтветитьМеня больше интересовал поиск и быстродействие, но... ( pam 05.12.2012 15:26 )
0(0)ссылки для вас
http://admin-scripting.blogspot.ru/2009/11/windows-2.html
и
http://www.vr-online.ru/content/sekrety-komandnoj-stroki-windows-5770
>> Ответить