Получение списка всех подкаталогов заданного каталога
Для построения списка всех подкаталогов определенного каталога можно воспользоваться коллекцией Folders, которая хранится в свойстве SubFolders соответствующего объекта Folder и содержит объекты Folder для всех подкаталогов.
В листинге 6.6 приведен сценарий ListSubFold.vbs, в котором на экран выводятся названия всех подкаталогов каталога C:\Program Files.
'*******************************************************************
' Имя: ListSubFold.vbs
' Язык: VBScript
' Описание: Получение списка всех подкаталогов заданного каталога
'*******************************************************************
'Объявляем переменные
Dim FSO,F,SFold,SubFolders,Folder,s
'Создаем объект FileSystemObject
Set FSO = WScript.CreateObject("Scripting.FileSystemObject")
'Путь к каталогу
SFold = "C:\Program Files"
s = "Каталог " & SFold & VbCrLf
s = s & "Подкаталоги:" & VbCrLf
'Создаем объект Folder для каталога C:\Program Files
Set F=FSO.GetFolder(SFold)
'Создаем коллекцию подкаталогов каталога C:\Program Files
Set SubFolders = F.SubFolders
'Цикл по всем подкаталогам
For Each Folder In SubFolders
'Добавляем строку с именем подкаталога
s = s & Folder & VbCrLf
Next
'Выводим полученные строки на экран
WScript.Echo s
'************* Конец *********************************************/
Листинг 6.6. Построение списка подкаталогов (VBScript)
Получение списка всех файлов заданного каталога
В свойстве Files объекта Folder, соответствующего определенному каталогу, хранится коллекция находящихся в этом каталоге файлов (объектов File ). В листинге 6.7 приведен сценарии ListFiles.vbs, выводящий на экран названия всех файлов, которые содержатся в специальной папке Мои документы.
'*******************************************************************
' Имя: ListFiles.vbs
' Язык: VBScript
' Описание: Получение списка всех файлов заданного каталога
'*******************************************************************
'Объявляем переменные
Dim FSO,F,File,Files,WshShell,PathList,s
'Создаем объект FileSystemObject
Set FSO = WScript.CreateObject("Scripting.FileSystemObject")
'Создаем объект WshShell
Set WshShell = WScript.CreateObject("WScript.Shell")
'Создаем объект WshSpecialFolders
Set WshFldrs = WshShell.SpecialFolders
'Определяем путь к папке Мои документы
PathList = WshFldrs.item("MyDocuments") & "\"
'Создаем объект Folder для папки Мои документы
Set F = FSO.GetFolder(PathList)
'Создаем коллекцию файлов каталога Мои документы
Set Files = F.Files
s = "Файлы из каталога " & PathList & VbCrLf
'Цикл по всем файлам
For Each File In Files
'Добавляем строку с именем файла
s = s & File.Name & VbCrLf
Next
'Выводим полученные строки на экран
WScript.Echo s
'************* Конец *********************************************
Листинг 6.7. Построение списка файлов в каталоге (JScript)
Создание каталога
Создать новый каталог на диске можно либо с помощью метода CreateFolder объекта FileSystemObject, либо с помощью метода Addколлекции Folders. Оба эти метода используются в сценарии MakeFolder.vbs для создания в каталоге C:\Program Files подкаталогов Новая папка и Еще одна новая папка (листинг 6.8).
'*******************************************************************
' Имя: MakeFolder.vbs
' Язык: VBScript
' Описание: Создание нового каталога
'*******************************************************************
'Объявляем переменные
Dim FSO, F, SubFolders
'Создаем объект FileSystemObject
Set FSO = WScript.CreateObject("Scripting.FileSystemObject")
'Создаем каталог C:\Program Files\Новая папка
FSO.CreateFolder("C:\Program Files\Новая папка")
'Создаем объект Folder для каталога C:\Program Files
Set F = FSO.GetFolder("C:\Program Files")
'Создаем коллекцию подкаталогов каталога C:\Program Files
Set SubFolders = F.SubFolders
'Создаем каталог C:\Program Files\Еще одна новая папка
SubFolders.Add "Еще одна новая папка"
'************* Конец *********************************************
Листинг 6.8. Создание нового каталога (VBScript)
Дата добавления: 2018-03-01; просмотров: 1680;