Windows Script Host для Windows 2000/XP
Шрифт:
//Записываем пустые строки
RepFile.WriteLine;
RepFile.WriteLine;
}
Полный текст сценария DrivesReport.js приведен в листинге 5.16.
Листинг 5.16. Отчет об использовании дискового пространства для всех устройств на компьютере
/*******************************************************************/
/* Имя: DrivesReport.js */
/*
Язык: JScript */
/* Описание: Формирование отчета об использовании дискового */
/* пространства для всех устройств на компьютере */
/*******************************************************************/
//Объявляем переменные
var FSO, RepFile, MDate,WshShell, ForWriting = 2;
// Функция для перебора в цикле всех устройств (дисков)
function LoopDrives {
var Drives;
//Создаем коллекцию дисков
Drives = new Enumerator( FSO.Drives );
//Цикл по всем дискам
for(; !Drives.atEnd; Drives.moveNext) WriteDriveInfo(Drives.item);
}
// Функция для вывода информации об одном устройстве (диске)
function WriteDriveInfo(drive) {
var s,Total,Free,Used,DriveLetter,VolumeName;
if (drive.IsReady) { //Проверяем готовность устройства
//Вычисляем общий объем диска в мегабайтах
Total = Math.round(drive.TotalSize/1048576);
//Вычисляем объем свободного пространства в мегабайтах
Free = Math.round(drive.FreeSpace/1048576);
//Вычисляем объем использованного пространства в мегабайтах
Used = Total - Free;
//Определяем букву диска
DriveLetter=drive.DriveLetter+":";
//Определяем метку тома
VolumeName=drive.VolumeName;
RepFile.WriteLine("+---------------------------------------------------+");
//Записываем информацию о букве диска
s="|"+FillStr(51,"Диск "+DriveLetter)+"|";
RepFile.WriteLine(s);
RepFile.WriteLine("+---------------------------------------------------+");
//Записываем информацию о метке тома
s="|"+LFillStr(25,"Метка тома: "+VolumeName)+"|";
//Записываем информацию об общем объеме диска
s+=LFillStr(25,"Общий
объем, Mb: "+Total)+"|";
RepFile.WriteLine(s);
RepFile.WriteLine("+---------------------------------------------------+");
//Записываем информацию об использованном пространстве
s="|"+LFillStr(25,"Используется, Mb: "+Used.toString)+"|";
//Записываем информацию о свободном пространстве
s+=LFillStr(25,"Свободно, Mb: "+Free.toString)+"|";
RepFile.WriteLine(s);
RepFile.WriteLine("+---------------------------------------------------+");
//Записываем пустые строки
RepFile.WriteLine;
RepFile.WriteLine;
} else if (drive.DriveType == 3) { //Проверяем, является ли диск сетевым
//Записываем информацию о букве диска
RepFile.WriteLine( "Диск " + drive.DriveLetter + " является сетевым" );
//Записываем пустые строки
RepFile.WriteLine;
RepFile.WriteLine;
} else {
//Устройство не готово
RepFile.WriteLine( "Устройство " + drive.DriveLetter + ": не готово" );
//Записываем пустые строки
RepFile.WriteLine;
RepFile.WriteLine;
}
}
/******************* Начало **********************************/
//Создаем объект FileSystemObject
FSO = WScript.CreateObject("Scripting.FileSystemObject");
//Открываем файл rep.txt
RepFile = FSO.OpenTextFile("rep.txt", ForWriting, true);
//Определяем текущую дату и время
MDate = new Date;
//Записываем дату и время в отчет
RepFile.WriteLine("Дата отчета: " + MDate);
RepFile.WriteLine;
//Вызываем функцию LoopDrives
LoopDrives;
//Закрываем файл rep.txt
RepFile.Close;
//Создаем объект WshShell
WshShell=WScript.CreateObject("WScript.Shell");
//Запускаем Блокнот (notepad.exe) и открываем в нем файл rep.txt
Поделиться:
Популярные книги
Энфис 6
6. Эрра
Фантастика:
героическая фантастика
рпг
аниме
5.00
рейтинг книги
Сердце Дракона. Предпоследний том. Часть 1
Сердце дракона
Фантастика:
фэнтези
5.00
рейтинг книги
Идеальный мир для Лекаря 8
8. Лекарь
Фантастика:
юмористическое фэнтези
аниме
7.00
рейтинг книги
Под маской, или Страшилка в академии магии
Фантастика:
юмористическая фантастика
7.78
рейтинг книги
Мой любимый (не) медведь
Любовные романы:
современные любовные романы
7.90
рейтинг книги
Академия
2. Клан Волка
Фантастика:
боевая фантастика
5.40
рейтинг книги
Играть, чтобы жить. Книга 3. Долг
3. Играть, чтобы жить
Фантастика:
фэнтези
киберпанк
рпг
9.36
рейтинг книги
Виконт. Книга 4. Колонист
Псевдоним `Испанец`
Фантастика:
фэнтези
попаданцы
аниме
7.50
рейтинг книги
Вечный Данж. Трилогия
Фантастика:
фэнтези
юмористическая фантастика
6.77
рейтинг книги
Мужчина не моей мечты
1. Мужчина не моей мечты
Любовные романы:
любовно-фантастические романы
8.30
рейтинг книги
Последний Паладин. Том 7
7. Путь Паладина
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Истинная со скидкой для дракона
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Волк 7: Лихие 90-е
7. Волков
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Кровь Василиска
1. Кровь Василиска
Фантастика:
фэнтези
попаданцы
аниме
4.25