Категории
Самые читаемые
onlinekniga.com » Компьютеры и Интернет » Программное обеспечение » Windows Script Host для Windows 2000/XP - Андрей Попов

Windows Script Host для Windows 2000/XP - Андрей Попов

Читать онлайн Windows Script Host для Windows 2000/XP - Андрей Попов

Шрифт:

-
+

Интервал:

-
+

Закладка:

Сделать
1 ... 78 79 80 81 82 83 84 85 86 ... 175
Перейти на страницу:

//в каталоге-источнике

Files=new Enumerator(Fold.Files);

Операции записи информации в log-файл и непосредственно переноса файлов из одного каталога в другой реализованы соответственно в функциях WriteLog() и MoveFiles().

В функции WriteLog() после объявления переменных открывается log-файл в режиме добавления строк:

var s, ss, s1, d, File, FLog;

WScript.Echo(" ");

WScript.Echo("Записываем информацию в log-файл...");

//Открываем log-файл для добавления

FLog=FSO.OpenTextFile(PathLog, ForAppending, true);

Затем в цикле while происходит просмотр коллекции файлов в каталоге-источнике:

//Переходим к первому элементу коллекции файлов

Files.moveFirst();

//Цикл по всем файлам в коллекции

while (!Files.atEnd()) {

В //Рзвлекаем текущий файл РёР· коллекции

В File=Files.item();

 //Переходим к следующему файлу в коллекции

В Files.moveNext();

}

Если файл подлежит перемещению (расширение этого файла совпадает с расширением файлов для перемещения), то определяется его имя (свойство Name), дата создания (свойство DateCreated) и текущая дата (объект Date), и в log-файл записывается соответствующая информация:

//Выделяем расширение файла

s=FSO.GetExtensionName(File.Name);

//Проверяем, совпадает ли расширение текущего файла

//с расширением файлов для перемещения

if (s==Mask) {

 //Выводим имя файла на экран

В WScript.Echo("В  "+File.Name);

 //Определяем дату создания файла

В d=new Date(File.DateCreated);

 //Формируем строку ss для записи в log-файл

В ss=LFillStr(13,File.Name)

В s1="("+DateToStr(d)+" ";

В s1+=TimeToStr(d)+")";

В ss+=LFillStr(20,s1);

 //Определяем текущую дату

В d=new Date();

В ss+=DateToStr(d);

В ss+=" "+TimeToStr(d);

 //Записываем сформированную строку в log-файл

В FLog.WriteLine(ss);

}

Записываемая в log-файл строка формируется в нужном виде с помощью вспомогательных функций LFillStr (выравнивание строки влево в поле заданной длины), DateToStr (формирование из объекта Date строки формата ДД/ММ/ГГГГ) и TimeTostr (формирование из объекта Date строки формата ЧЧ:ММ).

В функции MoveFiles(), как и в WriteLog(), производится перебор в цикле while файлов каталога-источника (элементов коллекции Files). Перемещение файлов осуществляется с помощью последовательного применения методов Copy и Delete:

Files.moveFirst();

//Цикл по всем файлам в коллекции

while (!Files.atEnd()) {

В //Рзвлекаем текущий файл РёР· коллекции

В File=Files.item();

 //Выделяем расширение файла

В s=FSO.GetExtensionName(File.Name);

 //Проверяем, совпадает ли расширение текущего файла

 //с расширением файлов для перемещения

В if (s==Mask) {

  //Выводим имя файла на экран

В  WScript.Echo("В  "+File.name);

  //Копируем файл в целевой каталог

В  File.Copy(Dest);

  //Удаляем файл

В  File.Delete();

  //Увеличиваем счетчик количества перемещенных файлов

В  Col++;

В }

 //Переходим к следующему файлу в коллекции

В Files.moveNext();

}

После перемещения всех файлов на экран выводится информация об их количестве:

WScript.Echo("Перемещено файлов:", Col);

WScript.Echo("Нажмите Enter...");

WScript.StdIn.ReadLine();

Полный текст сценария MoveLog.js приведен в листинге 5.19.

Листинг 5.19. Поиск файлов с ведением log-файла

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

/* РРјСЏ: MoveLog.jsВ В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В  */

/* Язык: JScript                                                   */

/* Описание: Перемещение файлов из каталога-источника в            */

/*           целевой каталог с ведением log-файла                  */

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

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

var

 Source="C:\In\", //Путь к каталогу-источнику файлов для перемещения

 Dest="C:\Out\",  //Путь к целевому каталогу

 Mask="003",        //Расширение файлов для перемещения

 PathLog="C:\In\log.txt",   //Путь к log-файлу

 ForAppending=8;    //Константа для работы с файлами

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

var FSO,Fold,Files;

//Функция для записи информации в log-файл

function WriteLog() {

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

var s,ss,s1,d,File,FLog;

В WScript.Echo("");

 WScript.Echo("Записываем информацию в log-файл...");

 //Открываем log-файл для добавления

В FLog=FSO.OpenTextFile(PathLog,ForAppending,true);

 //Переходим к первому элементу коллекции файлов

В Files.moveFirst();

 //Цикл по всем файлам в коллекции

В while (!Files.atEnd()) {

В  //Рзвлекаем текущий файл РёР· коллекции

В  File=Files.item();

  //Выделяем расширение файла

В  s=FSO.GetExtensionName(File.Name);

  //Проверяем, совпадает ли расширение текущего файла

  //с расширением файлов для перемещения

В  if (s==Mask) {

   //Выводим имя файла на экран

В В  WScript.Echo("В  "+File.Name);

   //Определяем дату создания файла

В В  d=new Date(File.DateCreated);

   //Формируем строку ss для записи в log-файл

В В  ss=LFillStr(13,File.Name)

В В  s1="("+DateToStr(d)+" ";

В В  s1+=TimeToStr(d)+")";

В В  ss+=LFillStr(20,s1);

   //Определяем текущую дату

В В  d=new Date();

В В  ss+=DateToStr(d);

В В  ss+=" "+TimeToStr(d);

1 ... 78 79 80 81 82 83 84 85 86 ... 175
Перейти на страницу:
На этой странице вы можете бесплатно читать книгу Windows Script Host для Windows 2000/XP - Андрей Попов.
Комментарии