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
Flasher



PostPosted: Mon Aug 01, 2011 17:44    Post subject: Reply with quote

Что-то вчера накидал (ин-ета не было - не мог выложить):
Code:
' Рекурсивная распаковка архивов внутри выделенных каталогов
' Параметры: %L <расширение архива>
'==========================================
Dim FSO, WSH
Set FSO = CreateObject("Scripting.FileSystemObject")
Set WSH = CreateObject("WScript.Shell")
Proga = WSH.ExpandEnvironmentStrings("%COMMANDER_PATH%\Utils\7-Zip\7z.exe")

With FSO.OpenTextFile(WScript.Arguments(0), 1)
  Do While Not .AtEndOfStream
    F = Trim(.ReadLine)
    If F <> "" Then
      If FSO.FolderExists(F) Then ForFolder FSO.GetFolder(F)
    End If
  Loop
  .Close
End With

WSH.Popup "Распаковка завершена!", 1.4, "Результат", 64
Set FSO = Nothing
Set WSH = Nothing
WScript.Quit

Sub ForFolder(Folder)
  Dim N
  For Each N In Folder.Files
    ForFile N
  Next
  For Each N In Folder.SubFolders
    ForFolder N
  Next
End Sub

Sub ForFile(File)
  If LCase(FSO.GetExtensionName(File)) = LCase(WScript.Arguments(1)) Then WSH.Run """"  & Proga & """x """  & File & """ -o""" & File.ParentFolder & "\"" -y", 0, True
End Sub
См., чтобы путь к 7z.exe соответствовал.

Last edited by Flasher on Tue Aug 02, 2011 12:32; edited 2 times in total
View user's profile Send private message


Powered by phpBB © 2001, 2005 phpBB Group