Windows Script Host для Windows 2000/XP
Шрифт:
/* Язык: JScript */
/* Описание: Добавление строки в текстовый файл */
/*******************************************************************/
//Объявляем переменные и инициализируем константы
var FSO,f,ForAppending = 8;
//Создаем объект FileSystemObject
FSO = WScript.CreateObject("Scripting.FileSystemObject");
//Открываем файл
f = FSO.OpenTextFile("C:\\TestFile.txt", ForAppending, true);
//Добавление в файл строку
f.WriteLine("Привет!");
//Закрываем файл
f.Close;
/*************
Конец *********************************************/
Замечание
Мнемонические константы, используемые в качестве параметров iomode и create, можно не определять явным образом в сценарии, как это сделано в вышеприведенном примере, а брать из самого объекта
FileSystemObject
(точнее говоря, из библиотеки типов этого объекта). Для этого в сценариях нужно применять разметку XML (см. листинг 3.9). Объект Drive
С помощью объекта
Drive
можно получить доступ к свойствам заданного локального или сетевого диска. Создается объект Drive
с помощью метода GetDrive
объекта FileSystemObject
следующим образом: var FSO, D;
FSO = WScript.CreateObject("Scripting.FileSystemObject");
D = FSO.GetDrive("C:");
Также объекты
Drive
могут быть получены как элементы коллекции Drives
. Свойства объекта
Drive
представлены в табл. 5.7; методов у этого объекта нет. Таблица 5.7. Свойства объекта Drive
| Свойство | Описание |
|---|---|
AvailableSpace | Содержит количество доступного для пользователя места (в байтах) на диске |
DriveLetter | Содержит букву, ассоциированную с локальным устройством или сетевым ресурсом. Это свойство доступно только для чтения |
DriveType | Содержит числовое значение, определяющее тип устройства: 0 — неизвестное устройство; 1 — устройство со сменным носителем; 2 — жесткий диск; 3 — сетевой диск; 4 — CD-ROM; 5 — RAM-диск |
FileSystem | Содержит тип файловой системы, использующейся на диске (FAT, NTFS или CDFS) |
FreeSpace | Содержит количество свободного места (в байтах) на локальном диске или сетевом ресурсе. Доступно только для чтения |
IsReady | Содержит true , если устройство готово, и false в противном случае. Для устройств со сменными носителями и приводов CD-ROM IsReady возвращает true только в том случае, когда в дисковод вставлен соответствующий носитель и устройство готово предоставить доступ к этому носителю |
Path | Содержит путь к диску (например, " С: ", но не "С:\ ") |
RootFolder | Содержит объект Folder , соответствующий корневому каталогу на диске. Доступно только для чтения |
SerialNumber | Содержат десятичный серийный номер тома заданного диска |
ShareName | Содержит
ShareName содержится пустая строка ("") |
TotalSize | Содержит общий объем в байтах локального диска или сетевого ресурса |
VolumeName | Содержит метку тома для диска. Доступно для чтения и записи |
В листинге 5.7 приведен сценарий DriveInfo.js, в котором объект
Drive
используется для доступа к некоторым свойствам диска С: (рис. 5.3). Рис. 5.3. Свойства диска С:
Листинг 5.7. Получение свойств диска С
/*******************************************************************/
/* Имя: DriveInfo.js */
/* Язык: JScript */
/* Описание: Вывод на экран свойств диска C: */
/*******************************************************************/
//Объявляем переменные
var FSO,D,TotalSize,FreeSpace,s;
//Создаем объект FileSystemObject
FSO = WScript.CreateObject("Scripting.FileSystemObject");
//Создаем объект Drive для диска C:
D = FSO.GetDrive("C:");
s="Информация о диске C:\n";
//Получаем серийный номер диска
s+="Серийный номер: "+D.SerialNumber+"\n";
//Получаем метку тома диска
s+="Метка тома: "+D.VolumeName+"\n";
//Вычисляем общий объем диска в килобайтах
TotalSize=D.TotalSize/1024;
s+="Объем: "+TotalSize+" Kb\n";
//Вычисляем объем свободного пространства диска в килобайтах
FreeSpace=D.FreeSpace/1024;
s+="Свободно: "+FreeSpace+" Kb\n";
//Выводим свойства диска на экран
WScript.Echo(s);
/************* Конец *********************************************/
Коллекция Drives
Доступная только для чтения коллекция
Drives
содержит объекты Drive
для всех доступных дисков компьютера, в том числе для сетевых дисков и дисководов со сменными носителями. В свойстве
Count
коллекции Drives
хранится число ее элементов, т.е. число доступных дисков. С помощью метода
Item(drivespec)
можно получить доступ к объекту Drive
для диска, заданного параметром drivespec
. Например: var FSO, DriveCol, D; //Создаем объект FileSystemObject
FSO = WScript.CreateObject("Scripting.FileSystemObject");
//Создаем коллекцию имеющихся в системе дисков
DriveCol = FSO.Drives;
// Извлечение элемента коллекции (диск С:)
D = DriveCol.Item("С:");
//Вывод на экран метки тома диска С:
WScript.Echo("Диск С: имеет метку", D.VolumeName);
Для перебора всех элементов коллекции
Drives
нужно, как обычно, использовать объект Enumerator
. В листинге 5.8 приведен файл ListDrives.js, в котором с помощью объекта
Enumerator
на экран выводятся сведения обо всех доступных дисках (рис. 5.4).
Поделиться:
Популярные книги
Кодекс Охотника. Книга XXXIII
33. Кодекс Охотника
Фантастика:
попаданцы
аниме
фэнтези
фантастика: прочее
5.00
рейтинг книги
Офицер
1. Офицер
Фантастика:
боевая фантастика
7.21
рейтинг книги
Черный Маг Императора 18
18. Черный маг императора
Фантастика:
юмористическое фэнтези
аниме
сказочная фантастика
фэнтези
фантастика: прочее
попаданцы
5.00
рейтинг книги
Я еще барон. Книга III
3. Дорогой барон!
Фантастика:
боевая фантастика
попаданцы
аниме
5.00
рейтинг книги
Телохранитель Генсека. Том 4
4. Медведев
Фантастика:
попаданцы
альтернативная история
6.00
рейтинг книги
Изгой Проклятого Клана. Том 4
4. Изгой
Фантастика:
аниме
фэнтези
фантастика: прочее
попаданцы
5.00
рейтинг книги
Возмутитель спокойствия
1. Глэрд
Фантастика:
фэнтези
боевая фантастика
попаданцы
5.00
рейтинг книги
Матабар IV
4. Матабар
Фантастика:
фэнтези
5.00
рейтинг книги
Бастард Императора. Том 7
7. Бастард Императора
Фантастика:
городское фэнтези
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Путь Шедара
4. Другая сторона
Фантастика:
боевая фантастика
6.83
рейтинг книги
Зодчий. Книга IV
4. Зодчий Империи
Фантастика:
аниме
фэнтези
попаданцы
7.00
рейтинг книги
Сильнейший ученик. Том 2
2. Пробуждение крови
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Двойник Короля 7
7. Двойник Короля
Фантастика:
аниме
фэнтези
фантастика: прочее
попаданцы
5.00
рейтинг книги
Школа пластунов
Одиночка
Фантастика:
боевая фантастика
5.00