Выбрать главу

//Создаем объект WshShell

WshShell=WScript.CreateObject("WScript.Shell");

//Определяем каталог, из которого был запущен сценарий

//(текущий каталог)

Folder = FSO.GetFolder(WshShell.CurrentDirectory);

//Получаем имя текущего каталога

s="Текущий каталог: "+Folder.Name+"\n";

//Получаем дату создания текущего каталога

s+="Дата создания: "+Folder.DateCreated+"\n";

//Выводим информацию на экран

WScript.Echo(s);

/*************  Конец *********************************************/

Методы объекта Folder описаны в табл. 5.9.

Таблица 5.9. Методы объекта Folder

Метод Описание
Copy(destination [, overwrite]) Копирует каталог в другое место
CreateTextFile(filename[, overwrite [, unicode]]) Создает новый текстовый файл с именем filename и возвращает указывающий на этот файл объект TextStream (этот метод аналогичен рассмотренному выше методу CreateTextFile объекта FileSystemObject)
Delete([force]) Удаляет каталог
Move(destination) Перемещает каталог в другое место

Приведем необходимые замечания для методов из табл. 5.9.

Метод Copy

Обязательный параметр destination определяет каталог, в который будет производиться копирование; групповые символы в имени каталога недопустимы.

Параметр overwrite является логической переменной, определяющей, следует ли заменять уже существующий каталог с именем destination (overwrite=true) или нет (overwrite=false).

Замечание 

Вместо метода Сору можно использовать метод CopyFolder объекта FileSystemObject.

Метод Delete

Если параметр force равен false или не указан, то с помощью метода Delete будет нельзя удалить каталог с атрибутом "только для чтения" (read-only). Установка для force значения true позволит сразу удалять такие каталоги.

При использовании метода Delete неважно, является ли заданный каталог пустым или нет — он удалится в любом случае.

Замечание

Вместо метода Delete можно использовать метод DeleteFolder объекта FileSystemObject.

Метод Move

Обязательный параметр destination определяет каталог, в который будет производиться перемещение; групповые символы в имени каталога недопустимы.

Замечание 

Вместо метода Move можно использовать метод MoveFolder объекта FileSystemObject

Коллекция Folders

Коллекция Folders содержит объекты Folder для всех подкаталогов определенного каталога. Создается эта коллекция с помощью свойства SubFolders соответствующего объекта Folder. Например, в следующем примере переменная SubFolders является коллекцией, содержащей объекты Folder для всех подкаталогов каталога C:\Program Files:

var FSO, F, SubFolders;

//Создаем объект FileSystemObject

FSO=WScript.CreateObject("Scripting.FileSystemObject");

//Создаем объект Folder для каталога C:\Program Files

F=FSO.GetFolder("C:\\Program Files");

//Создаем коллекцию подкаталогов каталога C:\Program Files

SubFolders=F.SubFolders;

Коллекция Folders (как и Drives) имеет свойство Count и метод Item. Кроме этого, у Folders есть метод Add(folderName), позволяющий создавать новые подкаталоги. В листинге 5.10 приведен сценарий MakeSubFold.js, который создает в каталоге "С:\Мои документы" подкаталог "Новая папка".

Листинг 5.10. Создание нового каталога

/*******************************************************************/

/* Имя: MakeSubFold.js                                             */

/* Язык: JScript                                                   */

/* Описание: Создание нового каталога                              */

/*******************************************************************/

//Объявляем переменные