![]() |
необычный поиск дубликатов
здравствуйте, реально ли осуществить вот такую задачку..
я хочу найти все файлы, в которых присутствуют энной или более кол-во одинаковых символов, т.е. я должен указать только цифру, например 5. а мне должны показаться (или в тхт или на экране, без разницы как), группы файлов в имени которых (не считая расширения) присутствует части слова из 5 или более одинаковых символов. А также, чтобы можно было указать слова для игнора (которые при нахождении в нескольких файлах не будут поводом принимать их за дубликаты, если таковые найдутся) пример у меня в папке куча папов.. в этих папках кучи файлов для примера возьму не множко: mydomain.com_хорошее кино.avi mydomain.com_хорошая комедия.wmv mydomain.com_камедиклаб.avi mydomain.com_сигареты камел.avi mydomain.com_стивен сигал.wmv я указываю верхнюю папку в которой нужно сделать проверку............. сами файлы находятся во вложенных папках, папки, которой я указал указываю количество символов 5 и более, указываю в списке игноров всего одно слово "mydomain.com_". такие должны быть результаты: хорошее кино.avi хорошая комедия.wmv если задал 4 и более, а слово игнор "mydomain.com_", результаты в виде группы хорошее кино.avi хорошая комедия.wmv ---------------------------------------------------- сигареты камел.avi стивен сигал.wmv если задал 3 и более, а слово игнор "mydomain.com_": хорошее кино.avi хорошая комедия.wmv ---------------------------------------------------- сигареты камел.avi стивен сигал.wmv ----------------------------------------------------- хорошая комедия.wmv камедиклаб.avi ---------------------------------------------------- камедиклаб.avi сигареты камел.avi Если можно сделать проще посредством каких - то программ, подскажите, пожалуйста каких именно, в тотале коммандере, есть поиск посредством плагина, может существует такой плагин :o |
PowerShell: Если такой вариант сортировки подойдет, то можно прицепить обработку файлов
Код:
$strings = 'хорошее кино', |
Foreigner, ноги у темы здесь растут: Прочие - не стандартный поиск дубликатов файлов.
|
Iska, там вроде не связано со скриптами. Ну ладно, что человек не делает, все делает для себя. Потренировался. Я кроме этого раздела никуда больше даже не заглядываю
|
Foreigner, спасибо, хочу протестировать, а у меня экран сразу изчезает.. т.е. нажимаю на файле правой кнопкой, "выполнить power shell", потом на синем фоне все быстро пробегает и окно закрывается
и еще вопросик, а можно прописать слова для игнора и чтобы расширение игнорировало? дело в том, что на многих файлах стоит как префикс название одного и того же домена, но эти файлы не являются дубликатами |
Цитата:
Код:
... Код:
... Цитата:
|
Код:
$notparse = 'mydomain.com_|mydomain.org_|www.ya.ru_' # не учитывается при поиске |
Foreigner, спасибо огромное.. оказывается я плохо пример сверху привел, там на самом деле гораздо больше совпадений))
только у меня вопросик: 1 - если у меня окно не изчезает и куча красного понаписано, мерцает, потом раз.. и останавливается (но окно не закрывается), я закрыл сам, открыл результаты, там уже записалось что-то, может нужно все же дождаться завершения, пока само закроется? (я прикрепил скрин) 2 - можно сделать так, чтобы не происходило слияние имени файла, если между ними есть слово игнор, а то получается, что вырезается слово игнор, и то, что было до и после этого слова сливается и принимается за дубликат пример: я указал в игнор rufig_ tort_ символов сделал 7 одно из совпадений [0OPUD-1]: 00030rufig_OPUD-179_site.com.wmv [0OPUD-1]: 00010tort_OPUD-181_site.com.wmv 3 - интересно откуда могло взяться вот такое?: символы 6 [[FHD]C]: 00001tort_DCN-047_site.com.wmv [[FHD]C]: DCN-043.avi в принципи все правильно, 6 символов есть, но почему в замене такое написано? я попробовал переместить в другую папку отдельно эти два файла, тогда получилось все нормально [DCN-04].......... может ли скрипт записать в квадратные скобки что - то из соседних файлов? (просто есть файл [FHD]CORE-026.mkv) |
Цитата:
Цитата:
Пока попробуйте так: Код:
$notparse = 'mydomain.com_|mydomain.org_|www.ya.ru_|\[игнор\]' # Если присутствуют'[' и ']', то их надо экранировать '\[' и '\]' |
сейчас нету fhd...., спасибо :)
Цитата:
или можно прописать в игнор случайные символы?, к примеру *rufig_, где * это случайные цифры перед словом.., я даже могу их кол-во задать, их будет 5, например #####rufig_ |
Alexander_88, Можно:
Код:
$notparse = '\d{5}|.+rufig_' '|' -- логическое 'или' '.+rufig_' -- один или более символов перед rufig_ |
Alexander_88, если использование скриптов не принципиально, посмотрите в сторону Everything. Пожалуй на сегодня это самый быстрый поиск, удовлетворяющий вашим критериям.
http://www.voidtools.com/Everything-1.3.0.632b.exe |
Цитата:
yurfed интересно, а где можно количесво символов там настроить? я прочитал справку Код:
Функции: |
не подскажете, что нужно прописать в конец, чтобы открыть этот финальный файл тхт в блокноте, ищу в гугле как открыть тхт, вроде не сложно должно быть, и нигде не могу найти
|
Alexander_88, Уберите команду return и добавьте в конце:
Код:
|
а я вот этим вариантом пользовался
Код:
$notparse = 'mydomain.com_|mydomain.org_|www.ya.ru_|\[игнор\]' # Если присутствуют'[' и ']', то их надо экранировать '\[' и '\]' сделал вот так , но не получается что - то Код:
$notparse = 'mydomain.com_|mydomain.org_|www.ya.ru_|\[игнор\]' # Если присутствуют'[' и ']', то их надо экранировать '\[' и '\]' |
Alexander_88, вы забыли '&', который был после return
|
спасибо, получилось
|
Время: 08:35. |
Время: 08:35.
© OSzone.net 2001-