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
 
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
Avada



Joined: 01 Aug 2008
Posts: 10415
Location: Россия, Саратов

Post (Separately) Posted: Wed Apr 27, 2011 23:52    Post subject: Reply with quote

Вахмурка
Я это тоже сначала хотел предложить. но теперь всё упирается в этот грандиозный файл-список из 9 тысяч (?) папок верхнего уровня.
_________________
Даже самая богатая фантазия
Не представит себе наши безобразия.
Back to top
View user's profile Send private message
den114



Joined: 03 Nov 2007
Posts: 25

Post (Separately) Posted: Wed Apr 27, 2011 23:57    Post subject: Reply with quote

Именно в этом вся и проблема, если б их было неско десятков, я б и тему поднимать не стал, быстрее было бы вручную.
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Thu Apr 28, 2011 00:08    Post subject: Reply with quote

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

sa wrote:
F5 опечатка?
Исправил.
Back to top
View user's profile Send private message
sa



Joined: 29 Apr 2009
Posts: 2688

Post (Separately) Posted: Thu Apr 28, 2011 02:16    Post subject: Reply with quote

Вахмурка wrote:
2den114
Потренируйся на кошках.

Ещё один вариант для тренировки на кошках.
Выделить нужные каталоги и упаковать их по Alt+F5 в какой-нибудь временный каталог с опциями “Отдельные архивы для каждого выбранного файла/каталога” и “Учитывать подкаталоги”, но без того чтобы “Сохранять пути”. Опцию “Удалять исходные файлы после упаковки” добавлять по вкусу или по свободному месту на диске. Самым сложным будет выбрать опцию замены существующих файлов. Возможно, подойдёт “Пропустить все”.
Затем выделить все архивы и по Alt+F9 “Распаковать каждый архив в отдельный каталог (с именем архива)”.
Back to top
View user's profile Send private message
Batya



Joined: 15 Dec 2004
Posts: 2224
Location: Москва, Россия

Post (Separately) Posted: Thu Apr 28, 2011 10:31    Post subject: Reply with quote

den114
vbs-скрипт:
Code:
'=====================================================================
' Перемещение файлов в корневую папку (верхнюю)

' Параметры:
' {файл-список корневых папок}

' Пример параметров при вызове из TC:
' %L
'=====================================================================

Dim FSO, F
Set FSO = CreateObject("Scripting.FileSystemObject")

With FSO.OpenTextFile(WScript.Arguments(0), 1)
  Do While Not .AtEndOfStream
    F = Trim(.ReadLine)
    If F <> "" Then
      If FSO.FolderExists(F) Then
        If Right(F, 1) <> "\" Then F = F & "\"
        Process F, F
      End If
    End If
  Loop
End With

Set FSO = Nothing
Wscript.Quit()

Sub Process(pPath, pTarget)
  Dim lF
  For Each lF in FSO.GetFolder(pPath).SubFolders
    Process lF.Path & "\", pTarget
  Next
  If LCase(pPath) <> LCase(pTarget) Then
    For Each lF in FSO.GetFolder(pPath).Files
      'Если файл с целевым именем существует, предварительно удаляем его
      If FSO.FileExists(pTarget & lF.Name) Then FSO.DeleteFile pTarget & lF.Name, True
      lF.Move pTarget
    Next
  End If
End Sub

_________________
Нет, я не сплю. Я просто медленно моргаю.
Back to top
View user's profile Send private message
sa



Joined: 29 Apr 2009
Posts: 2688

Post (Separately) Posted: Thu Apr 28, 2011 10:52    Post subject: Reply with quote

den114 wrote:
В случае если перемещаемый файл уже присутствует он должен заменятся.

Какой алгоритм замены? Например, оставлять более свежие файлы...
Back to top
View user's profile Send private message
Batya



Joined: 15 Dec 2004
Posts: 2224
Location: Москва, Россия

Post (Separately) Posted: Thu Apr 28, 2011 11:23    Post subject: Reply with quote

sa wrote:
Какой алгоритм замены?

Никакой. Просто замена. В задании ничего подобного не требовалось.
_________________
Нет, я не сплю. Я просто медленно моргаю.
Back to top
View user's profile Send private message
sa



Joined: 29 Apr 2009
Posts: 2688

Post (Separately) Posted: Thu Apr 28, 2011 11:38    Post subject: Reply with quote

Batya wrote:
Никакой.
То есть получается, что задача одна, а ответов у неё великое множество, если конечно в дереве не дубли одних и тех же файлов.
Back to top
View user's profile Send private message
Batya



Joined: 15 Dec 2004
Posts: 2224
Location: Москва, Россия

Post (Separately) Posted: Thu Apr 28, 2011 11:57    Post subject: Reply with quote

sa
У автора темы условия могут быть любые.
Например, в корневой папке должны лежать актуальные версии файлов, а появляются такие файлы где-то в дебрях вложенной структуры. При этом имена пересекаются только с именами файлов, уже лежащих в корневой папке.
Вообщем, ты для себя спрашиваешь или чисто академический интерес? Если для себя, то опиши, что тебе надо. В ином случае, лучше дождаться ответа автора темы.
_________________
Нет, я не сплю. Я просто медленно моргаю.
Back to top
View user's profile Send private message
sa



Joined: 29 Apr 2009
Posts: 2688

Post (Separately) Posted: Thu Apr 28, 2011 12:42    Post subject: Reply with quote

Batya wrote:
В ином случае, лучше дождаться ответа автора темы.
Именно так.
Back to top
View user's profile Send private message
den114



Joined: 03 Nov 2007
Posts: 25

Post (Separately) Posted: Thu Apr 28, 2011 16:47    Post subject: Reply with quote

Никаких условий замены нет, просто если при перемещении оказывается что такой файл уже есть он заменяется вновь пришедшим. Вне зависимости от даты их создания размера и т.д.
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Thu Apr 28, 2011 16:54    Post subject: Reply with quote

den114
Вообще-то в таких случаях спасибо (как минимум) говорят. Wink
Back to top
View user's profile Send private message
sa



Joined: 29 Apr 2009
Posts: 2688

Post (Separately) Posted: Thu Apr 28, 2011 17:14    Post subject: Reply with quote

Действительно
Batya wrote:
У автора темы условия могут быть любые.
в том числе и
den114 wrote:
Никаких условий замены нет<>Вне зависимости от даты их создания размера и т.д
Не ожидал…Тогда, наверное и на кошках тренироваться не надо.Smile
Back to top
View user's profile Send private message
den114



Joined: 03 Nov 2007
Posts: 25

Post (Separately) Posted: Thu Apr 28, 2011 17:31    Post subject: Reply with quote

Flasher wrote:
[b]
Вообще-то в таких случаях спасибо (как минимум) говорят. Wink

Спасибо это слабо сказано Smile
Просто нет привычки заранее (до проверки) как ругать так и благодарить.

Batya

ОГРОМНОЕ СПАСИБО !!! Буду должен.
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Thu Apr 28, 2011 17:33    Post subject: Reply with quote

den114
А я уже по коду вижу, что там всё правильно. Сам вчера начал что-то аналогичное делать, потом дела другие появились. Wink
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
Page 2 of 2

 
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