Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Групповое переименование
Goto page Previous  1, 2, 3 ... 27, 28, 29 ... 49, 50, 51  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
SVM



Joined: 16 Oct 2008
Posts: 47

Post (Separately) Posted: Tue Mar 10, 2015 15:38    Post subject: Reply with quote

Flasher
Переименовывает умляуты и кирилицу, но на больших файлах (проверял на 2-3 гигабайтных), начинает занимать всю оперативную память 2 Гб и выскакивает ошибка:

Строка: 46
Символ: 31
Ошибка: Недостаточно памяти для завершения операции.
Код: 8007000E
Источник: Provider

Первый скрипт с XMD5.dll на этих же файлах занимает 3,5 Мб
Flasher wrote:
Кстати, а почему не сделать аналог с фильтром и созданием Info.<CRC>?
Хорошо бы, как в rhash обновление crc файлов, a если их нет то создание.
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Tue Mar 10, 2015 20:36    Post subject: Reply with quote

SVM
Насчёт памяти не знаю как решить в контексте приложенного модуля. Читается с экономией, а вот запись кусками приходит в объект до заполнения. У XMD5 свой внутренний алгоритм работы с заданным файлом, там этот вопрос, что логично, решён.

По поводу обновления и создания. А разве в скрипте создания Info.txt не так?
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
SVM



Joined: 16 Oct 2008
Posts: 47

Post (Separately) Posted: Tue Mar 10, 2015 23:04    Post subject: Reply with quote

Flasher wrote:
А разве в скрипте создания Info.txt не так?
Ну там всё быстро происходит. Я имел ввиду rhash может не пересчитывать заново crc всех файлов (судя по скорости), а считает только те файлы которых нет в *.md5 и дополняет crc файл.
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Tue Mar 10, 2015 23:28    Post subject: Reply with quote

SVM
Быстро или нет отношения к делу не имеет.
SVM wrote:
rhash может не пересчитывать заново crc всех файлов (судя по скорости), а считает только те файлы которых нет в *.md5 и дополняет crc файл.
Так не бывает. Чтобы что-то дополнить, нужно узнать, что дополнять, а значит, перечитать crc. Только это делать вовсе необязательно, достаточно перезаписать файл целиком. Поэтому я и не понял, зачем приводился пример с rhash, если данное событие в аналоге и так реализовано.

SVM wrote:
всю оперативную память 2 Гб
А чего не подкупить ещё? За 2-2.5 тыс. можно взять 4 Гб.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
SVM



Joined: 16 Oct 2008
Posts: 47

Post (Separately) Posted: Wed Mar 11, 2015 00:54    Post subject: Reply with quote

Flasher wrote:
Так не бывает.
Я думал в rhash -u, --update, в файле crc проверяет по имени недостающие файлы, считает только их и добавляет в crc файл. Например в папке 1 Тб файлов, добавил несколько файлов в папку и из-за этого пересчитывать все файлы? Я делаю это вручную, посчитал crc 2 файлов, открыл в akelPad, скопировал 2 строки в буфер, добавил в общий crc.
Flasher wrote:
А чего не подкупить ещё?
Компьютеру лет 6, его проще полностью обновить или искать БУ память.
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Wed Mar 11, 2015 02:04    Post subject: Reply with quote

Согласен, хэш - не размер, нужен чисто update.

SVM wrote:
Компьютеру лет 6, его проще полностью обновить или искать БУ память
Так 6 лет назад современные материнки допускали на борт DDR3.

Ещё посмотрю пару-тройку компонентов, работающих отдельно с файлами, как они с юникодными именами справляются. Если повезёт, сообщу.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Thu Mar 12, 2015 01:47    Post subject: Reply with quote

SVM
Новости неутешительные. Никто не хочет читать юникодные имена (умляутов не касается). Так как быть? Временно переименовывать на момент чекинга? Или к rhash обратимся?

 Про rhash:

_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.


Last edited by Flasher on Sun Mar 15, 2015 09:44; edited 1 time in total
Back to top
View user's profile Send private message
SVM



Joined: 16 Oct 2008
Posts: 47

Post (Separately) Posted: Thu Mar 12, 2015 12:49    Post subject: Reply with quote

Flasher wrote:
Так как быть? Временно переименовывать на момент чекинга? Или к rhash обратимся?
Тогда буду пользоваться первым скриптом XMD5, а умляуты и юникод переименовывать в Total Commander.
Flasher wrote:
Рекурсия там есть, но она собирает всё в один файл, что для нас, как я понимаю, не годится
Нужен скрипт аналог предыдущих скриптов, то есть в каждой папке *.md5 файл
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Thu Mar 12, 2015 14:19    Post subject: Reply with quote

SVM wrote:
Тогда буду пользоваться первым скриптом XMD5
Мм.. А что не так с утилитами? Я помимо rhash ещё 3 нашёл, которые читают юникодные имена. Самая маленькая - 93 Кб.
SVM wrote:
а умляуты и юникод переименовывать в Total Commander.
Я то имел в виду - скриптом переименовывать...
SVM wrote:
Нужен скрипт аналог предыдущих скриптов, то есть в каждой папке *.md5 файл
Да, я понимаю, просто вариант с единым для подпапок хэш-файлом не такой уж и безнадёжный в плане удобства. Только работать с ним придётся не средствами ТС.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
SVM



Joined: 16 Oct 2008
Posts: 47

Post (Separately) Posted: Thu Mar 12, 2015 15:43    Post subject: Reply with quote

Flasher wrote:
А что не так с утилитами? Я помимо rhash ещё 3 нашёл, которые читают юникодные имена.
Не пойму это про какой скрипт, переименование файлов в структуре активного каталога по MD5, или подсчёт crc - сумм файлов и добавления в crc файлы? Если есть решение по умляутам и юникоду, то было бы отлично.
Flasher wrote:
просто вариант с единым для подпапок хэш-файлом не такой уж и безнадёжный в плане удобства.
Может этот вариант и удобный, но отпадает возможность проверки в Total Commander. А если удалить папку, потом нужно будет обновлять единый crc файл. Проще удалить папку вместе с crc файлом и не обновлять единый crc файл.
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Thu Mar 12, 2015 20:06    Post subject: Reply with quote

SVM wrote:
Не пойму это про какой скрипт, переименование файлов в структуре активного каталога по MD5 ... Если есть решение по умляутам и юникоду, то было бы отлично.
Сперва нужно сделанное допилить, т.е. речь только о Юникоде и сохранении памяти.
Не буду тогда править старый вариант.
 Вот новый:

Что касается объединения, то я пока не решил. Думаю, что лучше будет добавлять ВОМ к создаваемым UTF-8-спискам самим rhash или другой утилитой. Это видится оптимальней по скорости. И, соответственно, это уже будет в ином топике.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.


Last edited by Flasher on Sat Mar 14, 2015 02:38; edited 2 times in total
Back to top
View user's profile Send private message
SVM



Joined: 16 Oct 2008
Posts: 47

Post (Separately) Posted: Fri Mar 13, 2015 22:06    Post subject: Reply with quote

Flasher
Работает, но зачем то после переименования подсчитывает crc переименованных файлов.
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Fri Mar 13, 2015 23:44    Post subject: Reply with quote

SVM
С чего такой вывод?
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
SVM



Joined: 16 Oct 2008
Posts: 47

Post (Separately) Posted: Sat Mar 14, 2015 00:18    Post subject: Reply with quote

Flasher
Переименовывает например 10 минут, потом 10 минут ничего не переименовывает, в процессах идёт подсчёт md5 уже переименованного файла "C:\Program Files\Total Commander\Plugins\utils\HashFile\hashfile.exe" -md5 "L:\Папка\Переименованный_файл.mp4"
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Sat Mar 14, 2015 00:43    Post subject: Reply with quote

SVM wrote:
потом 10 минут ничего не переименовывает
Скрипт проверяет все файлы, в том числе те, что не были переименованы. Это же заведомо узнать невозможно.
А само окно появляется за 10 минут до окончания? Что-то не верится.
И зачем тут ключ -md5? См. внимательно описание в шапке.
SVM wrote:
в процессах идёт подсчёт md5 уже переименованного файла
В коде нет ничего такого, чтобы подобное могло происходить.

Добавил счётчики. Если все требуемые файлы будут переименованы, то скрипт должен завершить работу.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander All times are GMT + 4 Hours
Goto page Previous  1, 2, 3 ... 27, 28, 29 ... 49, 50, 51  Next
Page 28 of 51

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group