swr
|
Posted: Tue Sep 13, 2011 11:33 Post subject: |
|
|
Распаковка всех *.opf происходит в одну и ту же папку
Примерно это вывглядит так
Папка\Автор - Название 1.epub
Папка\Автор - Название 2.epub
Папка\Автор - Название 3.epub
Папка\OEBPS\Content.opf
Папка\OEBPS\Content.opf
Папка\OEBPS\Content.opf
' Рекурсивная распаковка архивов внутри выделенных каталогов
' Параметры: %L <расширение архива>
'==========================================
Dim FSO, WSH
Set FSO = CreateObject("Scripting.FileSystemObject")
Set WSH = CreateObject("WScript.Shell")
Proga = WSH.ExpandEnvironmentStrings("c:\Programs\Archives\7-Zip\7z.exe")
Path = WScript.Arguments(2)
If Right(Path,1) <> "\" Then Path = Path & "\"
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""" & Path & Mid(File.ParentFolder,4) & "\"" -i!OEBPS\*.opf -y", 0, True
End Sub
Code: |
TOTALCMD#BAR#DATA
"F:\Временно\_File Download\Local\Рекурсивная распаковка.vbs"
"%L" epub "%T"
C:\WINDOWS\System32\WScript.exe
Рекурсивная распаковка
-1
|
|
|