Копирование "пустой" структуры каталогов с файлами
Q: Бывает нужно скопировать каталог вместе с вложенными в него каталогами и файлами, но так, чтобы вместо файлов копировались "пустышки", с соответствующими им именами.
A: Тебе поможет следующий скрипт: '===================================================================== ' Создание структуры каталогов и файлов нулевого размера в них
' В параметрах вызова из TC должно быть прописано: ' %L "%T" '=====================================================================
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) Target = WScript.Arguments(1)
Do While Not OTF.AtEndOfStream Selected = OTF.ReadLine If FSO.FileExists(Selected) Then WSH.Run "fsutil file createnew """ & Target & FSO.GetFile(Selected).Name & """ 0", 7, True 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 'MsgBox("Выполнено!") 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 WSH.Run "fsutil file createnew """ & Tar & FSO.GetFile(f).Name & """ 0", 7, True Next End Function
Сохрани код в файл с расширением vbs. Повесь файл на кнопку. В параметрах кнопки укажи: %L "%T". Соответственно, выделяешь файлы и папки и нажимаешь кнопку. На противоположной панели будет создана структура каталогов с файлами нулевого размера. А затем ты можешь с ними делать что угодно. Например, запаковать в любой архив.