Как сравнить папки ТОЛЬКО по именам файлов?
Select messages from
# through # FAQ
[/[Print]\]
Goto page Previous  1, 2  :| |:
Total Commander -> Общие вопросы

#16:  Author: FlasherLocation: Москва PostPosted: Sat Apr 27, 2013 22:13
    —
toran30
Как насчёт такого варианта?:
Code:
'==========================================================================
' Выделение в другой панели папок, имеющих все выделенные элементы активной

' Параметры: %F "%T"
'================================ Путь к TCFS2 ============================
TCFS2 = """%COMMANDER_PATH%\Utils\TCFS2\TCFS2.exe"""
'==========================================================================

With WScript.Arguments
  If .Count = 0 Then WScript.Quit
  List = .Item(0) : Target = .Item(1)
End With : NL = vbNewLine

With CreateObject("Scripting.FileSystemObject")
  Names = .OpenTextFile(List, 1).ReadAll
  Arr = Split(Names, NL) : Count = Ubound(Arr) : Names = NL & Names
  For Each Fd in .GetFolder(Target).SubFolders
    n = 0 : Set Fold = .GetFolder(Fd)
    If .FolderExists(Arr(0)) Then
      For Each F in Fold.SubFolders
        If InStr(Names, NL & .GetFileName(F) & "\" & NL) Then n = n + 1
      Next
    End If
    For Each F in Fold.Files
      If InStr(Names, NL & .GetFileName(F) & NL) Then n = n + 1
    Next : If n = Count Then Folders = Folders & Fd & "\" & NL
  Next
End With
If Folders <> "" Then
  Dim WSH : Set WSH = CreateObject("WScript.Shell")
  P = "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\3\1407"
  A = WSH.RegRead(P) : If A > 0 Then WSH.RegWrite P, 0, "REG_DWORD"
  With CreateObject("InternetExplorer.Application")
    .Navigate("about:blank")
    T = .Document.ParentWindow.ClipboardData.GetData("text")
    .Document.ParentWindow.ClipboardData.SetData "text", Folders
    WSH.Run TCFS2 & "/ef ""send({tab}) tcm(2033)""", 0, True
    .Document.ParentWindow.ClipboardData.SetData "text", T
    .ExecWB 45, 2 : .Quit
  End With : If A > 0 Then WSH.RegWrite P, A, "REG_DWORD"
End If : Set WSH = Nothing : WScript.Quit

#17: Как сравнить папки по именам файлов БЕЗ УЧЁТА РАСШИРЕНИЙ? Author: PolkanLocation: РФ, Иркутск PostPosted: Tue Jan 10, 2017 20:46
    —
Здравствуйте,
Подниму эту тему как наиболее близкую к моей проблеме.
Задача такова:
Есть две папки с файлами:
в одной файлы 1.xxx, 2.xxx, 3.xxx, 4.xxx, 5.xxx, ....
во второй файлы 1.yyy, 3.yyy, 5.yyy, ...
т.е. файлы в папках с совпадающими или нет именами, но с разными расширениями (мне это нужно для сравнения архивных папок с JPG и RAW фотофайлами).

Цель:
сравнением папок выявить несовпадающие по именам файлы и удалить/переместить/скопировать их. Расширения должны игнорироваться.

Как это проще всего сделать? "Синхронизация каталогов", насколько я её изучил, так делать не может.
Буду очень признателен за работающее решение или направление поиска.
(ТС 8.52)

#18:  Author: FlasherLocation: Москва PostPosted: Tue Jan 10, 2017 22:30
    —
Polkan
Поиск в этих папках дубликатов по размеру, содержимому, по данным плагинов: [=tc.Имя].
Вывод на панель, Num+, выбрать нужные опции, применить и делать с выделенным всё, что заблагорассудиться.
Можно найти только по [=tc.Имя] и так же работать.

Polkan wrote:
Подниму эту тему как наиболее близкую к моей проблеме.
Ошибаетесь: 1, 2, 3.

Last edited by Flasher on Tue Jan 10, 2017 23:01; edited 1 time in total

#19:  Author: PolkanLocation: РФ, Иркутск PostPosted: Tue Jan 10, 2017 22:56
    —
Flasher wrote:
Polkan
Поиск в этих папках дубликатов по размеру, содержимому, по данным плагинов: [=tc.Имя].
Вывод на панель, Ctrl+A, сохранить выделение, выйти из результатов.
Потом найти всё в этих папках, вывести на панель и пользоваться восстановением выделения и инверсией с необходимыми процедурами.

Споткнулся сразу на первой строке: "Искомые файлы не найдены"... Соответственно, нет "Вывода на панель" и всего нижеследующего.
Полагаю, что из-за поиска поочередно в каждой из папок? Их как-то можно две сразу в "Поиск" загрузить или я что-то другое важное упустил?

#20:  Author: FlasherLocation: Москва PostPosted: Tue Jan 10, 2017 23:06
    —
Справка: Место поиска:. См. ссылки выше. Всё давно уже разобрано (с автоматизацией и без).

P.S.: Не надо цитировать всё подряд.

#21:  Author: AvadaLocation: Россия, Саратов PostPosted: Tue Jan 10, 2017 23:24
    —
Polkan
Прочитайте правила форума и получите замечание за их нарушение. Вам всё ответили, больше тут обсуждать нечего.

#22:  Author: PolkanLocation: РФ, Иркутск PostPosted: Tue Jan 10, 2017 23:28
    —
Flasher
Спасибо за указанные источники - первая же тема "Поиск дубликатов по именам файлов разного типа" вопрос закрыла.
Но Ваш рецепт оказался, пожалуй, проще и понятней остальных ([=tc.Имя] достаточно); огромное Спасибо!



Total Commander -> Общие вопросы


output generated using printer-friendly topic mod. All times are GMT + 4 Hours

Goto page Previous  1, 2  :| |:
Page 2 of 2

Powered by phpBB © 2001, 2005 phpBB Group