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 

Single Post  Topic: Выделение дубликатов 
Author Message
Volniy



PostPosted: Sat Mar 18, 2006 03:22    Post subject: Re: Выделение дубликатов Reply with quote

Againster wrote:
Как можно выделить дубликат(ы) для удаления?
Имеется ввиду что должен остаться только один файл из пары.

А если без этих заморочек с выделением: раз надо удалить лишнее, вот и удаляем его после того как Тотал это лишнее нам уже нашел.
Вот скрипт:

Code:
'=====================[ Start of file ]=========================

'  File:         DelNotFirst.vbs
'  Description:  Удаляет все парные файлы кроме первого
'                из списка, созданного поиском дубликатов в ТС
'  Installation: Создайте кнопку на панели TC
'                Команда: "диск:\путь\к\файлу\DelNotFirst.vbs"
'                Параметры: "%L"
'  Copyright:    (c) 2006, Volniy

Option Explicit
Dim FSO, ListFile, SelFile
Dim File1, File2, Cnt
Set FSO = CreateObject("Scripting.FileSystemObject")
Set ListFile = FSO.OpenTextFile(WScript.Arguments(0), 1)
Do While Not ListFile.AtEndOfStream
  SelFile = ListFile.ReadLine
  File2 = FSO.GetFileName(SelFile)
  If StrComp(File1, File2, 1) = 0 Then
     On Error Resume Next
     FSO.DeleteFile SelFile, True
     Cnt = Cnt + 1
  End If
  File1 = File2
Loop
ListFile.Close
Set ListFile = Nothing
Set FSO = Nothing
MsgBox "Удалено дубликатов: " & Cnt, vbInformation, "Завершено!"
WScript.Quit

'=====================[  End of file  ]=========================


Не забыть только выделить весь список найденных дубликатов перед запуском скрипта!
View user's profile Send private message


Powered by phpBB © 2001, 2005 phpBB Group