nhreplace v2.6.0

Обсуждение программы nhrt - замена текста в файлах (прежнее название nhrplc)
Закрыто
art
Сообщения: 4
Зарегистрирован: 25 авг 2013, 19:47

nhreplace v2.6.0

Сообщение art »

Добрый день
Огромное спасибо за ваш простой и полезный софт!


1. nhreplace v2.6.0 на файле 250мб не отработал.
в папке создался пустой tmp файл и все.
скрин лога прикрепил
тест здесь http://yadi.sk/d/Njs7SH_xQU69M
тестировал на: Intel(R) Core(TM) i7-2630QM CPU @ 2.00GHz 2.00 GHz (ОЗУ): 8,00 ГБ win 7 64

например задача:
необходимо сделать 150 000 уникальных замен в файле весом 1gb
вопрос: как приостановить работу программы и не потерять данные. Если закрыть cmd, то есть риск попасть в момент записи в файл, в результате чего файл будет пустым (0мб).

Пока использую предыдущую версию
Вложения
1.jpg
nhutils
Сообщения: 595
Зарегистрирован: 09 дек 2009, 18:08
Контактная информация:

Re: nhreplace v2.6.0

Сообщение nhutils »

Здравствуйте! Спасибо за добрые слова и предоставленную информацию!
art писал(а):nhreplace v2.6.0 на файле 250мб не отработал.
в папке создался пустой tmp файл и все.
Оказалось, что в последней версии v2.6 нарушилась обработка текстовых файлов Unix style – с концом строки 0A. Ваш файл wp_posts.sql имеет такой формат, и замена текста в v2.6 происходит некорректно.
Поскольку программа nhreplace была рассчитана на применение в Windows, где конец строки кодируется как 0D0A, то обработка текстовых файлов Unix не проверялась, и поэтому проблема не была выявлена при тестировании. В следующей версии исправим.

Ещё такой момент. Ваш файл имеет кодировку UTF8 без BOM, а программа автоматически определяет UTF8 только по BOM, поэтому для корректной обработки лучше явно указывать кодировку -cp:utf8 (хотя при этом в выходной файл будет добавлен BOM).
art писал(а):например задача:
необходимо сделать 150 000 уникальных замен в файле весом 1gb
вопрос: как приостановить работу программы и не потерять данные. Если закрыть cmd, то есть риск попасть в момент записи в файл, в результате чего файл будет пустым (0мб).
Хороший вопрос, особенно для больших файлов. Сейчас такой возможности нет, добавим в ближайших версиях.

И ещё, чтобы сделать несколько разных замен, лучше использовать список замен -list, это будет быстрее.
nhutils
Сообщения: 595
Зарегистрирован: 09 дек 2009, 18:08
Контактная информация:

Re: nhreplace v2.6.0

Сообщение nhutils »

Проблемы с форматами исправлены в nhreplace v2.6.1 http://nhutils.ru/blog/nhreplace-v2-6-1/
Ваш файл 250 МБ обрабатывается у меня за 6 минут при использовании режима списка

Код: Выделить всё

nhrplc.exe -list:wp_posts-list.txt -o:d wp_posts.sql

Список wp_posts-list.txt содержит все замены:

Код: Выделить всё

 -spt:"/region/arbat" -t:"/cao/arbat/"  
 -spt:"/region/basmannyj" -t:"/cao/basmannyj/"  
 -spt:"/region/hamovniki" -t:"/cao/hamovniki/"  
…
Безопасное прерывание будет в следующей версии.
art
Сообщения: 4
Зарегистрирован: 25 авг 2013, 19:47

Re: nhreplace v2.6.0

Сообщение art »

Спасибо - протестирую, отпишусь
Закрыто