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



Joined: 30 Jan 2017
Posts: 5

Post (Separately) Posted: Wed May 13, 2020 11:09    Post subject: Reply with quote

Здравствуйте.
Добавил в исходный скрипт (Копирование "пустой" структуры каталогов с файлами) возможность не создавать определённый тип файлов (dat).

А как добавить копирование в очередь с параметрами *.* | *.dat?
Мне нужно чтобы именно TC копировал, как будто я сам нажал F5, выбрал "Только файлы типа - *.* | *.dat", нажал F2.

Code:
Option Explicit
Dim FSO, WSH, OTF, Target, NewTar
Dim Selected
Set FSO = CreateObject("Scripting.FileSystemObject")
Set WSH = CreateObject("WScript.Shell")
Set OTF = FSO.OpenTextFile(WScript.Arguments(0), 1, False, -2)
Target  = WScript.Arguments(1)
Do While Not OTF.AtEndOfStream
  Selected = OTF.ReadLine
 
 
  If FSO.FileExists(Selected) And Right(Selected,4)<>".dat" Then
    FSO.CreateTextFile(Target & FSO.GetFile(Selected).Name)
  End If
  If FSO.FolderExists(Selected) Then
    NewTar = Target & FSO.GetFolder(Selected).Name
    If Not FSO.FolderExists(NewTar) Then
      FSO.CreateFolder(NewTar)
    End If
    FolderProcess FSO.GetFolder(Selected), NewTar & "\"
  End If
Loop

Set OTF = Nothing
Set FSO = Nothing
Set WSH = Nothing
WScript.Quit()
 
Function FolderProcess(Fold, Tar)
  Dim sf, f, NewF
  For Each sf in Fold.SubFolders
    NewF = Tar & sf.Name
    If Not FSO.FolderExists(NewF) Then
      FSO.CreateFolder(NewF)
    End If
    FolderProcess sf, NewF & "\"
  Next
  For Each f in Fold.Files
   If Right(FSO.GetFile(f).Name,4)<>".dat" Then
   
       FSO.CreateTextFile(Tar & FSO.GetFile(f).Name)
  End If

  Next
End Function
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Wed May 13, 2020 13:10    Post subject: Reply with quote

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



Joined: 30 Jan 2017
Posts: 5

Post (Separately) Posted: Wed May 13, 2020 17:57    Post subject: Reply with quote

Flasher wrote:
pcherevin wrote:
Мне нужно чтобы именно TC копировал
У него нет такого функционала.


Спасибо!

А команду cm_CopyOtherpanel из VBS не вызвать без бубна?
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Wed May 13, 2020 19:22    Post subject: Reply with quote

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



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

Post (Separately) Posted: Thu May 14, 2020 16:42    Post subject: Reply with quote

pcherevin
Не нарушайте правила. Оверквотинг на форуме запрещён. Кнопка "цитата" для тех, кто умеет ей пользоваться. Хорошо заметно, что вы — не умеете.
_________________
Даже самая богатая фантазия
Не представит себе наши безобразия.
Back to top
View user's profile Send private message
pcherevin



Joined: 30 Jan 2017
Posts: 5

Post (Separately) Posted: Thu May 14, 2020 23:59    Post subject: Reply with quote

Я наверное плохо объяснил.

Привязал я скрипт к кнопке на панели инструментов. Нажимаю на кнопку, выполняется скрипт "Копирование "пустой" структуры каталогов с файлами". Создаётся структура с пустыми файлами. И последней командой скрипт исполняет cm_CopyOtherpanel, в TC открывается диалоговое окно копирования файлов.
Можно так сделать?
Back to top
View user's profile Send private message
Avada



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

Post (Separately) Posted: Fri May 15, 2020 06:52    Post subject: Reply with quote

pcherevin
Не знаю, как автор скрипта, а я смысл этого дополнения не понимаю. Если потом вам нужен будет диалог копирования, неужели так сложно открыть его вручную? Сцеплять такие вещи в автоматическом режиме — это довольно странный каприз.
_________________
Даже самая богатая фантазия
Не представит себе наши безобразия.
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Fri May 15, 2020 08:59    Post subject: Reply with quote

Avada wrote:
Не знаю, как автор скрипта
И автор скрипта вряд ли бы понял.

pcherevin
Логика появления этого диалога в чём?
_________________
Автору сборки 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, 4, 5
Page 5 of 5

 
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