Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   Javascript Удаление скрытых файлов (http://forum.oszone.net/showthread.php?t=180980)

POOLEET 20-07-2010 08:56 1456533

Javascript Удаление скрытых файлов
 
Необходимо из заданной дериктории удалить все скрытые файлы и перед каждым удалением задавать вопрос "Удалить? Да.Нет"

deepred 20-07-2010 10:18 1456564

Код:

var fso, fold, foldcoll;
var fso, file, filecoll;

var foldnamedel, foldnamesave, foldnamevis;
var filenamedel, filenamesave, filenamevis;
var list, filelist, foldlist, BtnCode;
var filecount, foldcount;

objfold = "f:\\[ coding ]\\vbs_js\\del_hidden"

foldnamedel  = "";
foldnamesave  = "";
foldnamevis  = "";
filenamedel  = "";
filenamesave  = "";
filenamevis  = "";
ls = " ---------------------------- "
hs = "**********************************"
filecount = 0;
foldcount = 0;

var WshShell = WScript.CreateObject("WScript.Shell");
fso  =  new ActiveXObject("Scripting.FileSystemObject");
fold  =  fso.GetFolder(objfold);
file  =  fso.GetFolder(objfold);

foldcoll = new Enumerator(fold.SubFolders);
filecoll = new Enumerator(file.files);

// Блок отработки папок: поиск и действие -----------------------------------------------------------------------------------------

for (; !foldcoll.atEnd();

foldcoll.moveNext())
{
    //WScript.Echo ( "Номер кода атрибута: " + foldcoll.item().attributes+ " , имя - " + foldcoll.item().Name
)
    if (foldcoll.item().attributes & 2) // Производим поиск папок с атрибутом "скрытый"
{
        var BtnCode = WshShell.Popup ("Удалить папку: " + "\n" + foldcoll.item().Name + "?", 0, "удаление скрытых файлов:", 4 + 32);
        foldcount = foldcount+1

switch(BtnCode) {
  case 6:
    //WScript.Echo ("Удаление папки");
      foldnamedel += foldcoll.item()
      foldnamedel += "\n"
      fso.DeleteFolder(foldcoll.item());
      break;
  case 7:
    //WScript.Echo ("Сохранение папки");
      foldnamesave += foldcoll.item()
      foldnamesave += "\n"
      break;
}}

    else {
          foldnamevis += foldcoll.item()
          foldnamevis += "\n"}
};

// Блок отработки результата действий с папками -----------------------------------------------------------------------------------

foldnamedel  =  "Удаленные папки:" + "\n" + foldnamedel;
//WScript.Echo ( foldnamedel )
foldnamesave =  "Сохраненные папки:" + "\n" + foldnamesave;
//WScript.Echo  ( foldnamesave )
foldnamevis  =  "Видимые папки:" + "\n" +  foldnamevis;
//WScript.Echo ( foldnamevis )

// Блок отработки файлов: поиск и действие -----------------------------------------------------------------------------------------

for (; !filecoll.atEnd();

filecoll.moveNext())
{
    //WScript.Echo ( filecoll.item().attributes + filecoll.item().Name
)
    if (filecoll.item().attributes & 2) // Производим поиск файлов с атрибутом "скрытый"
{
        var BtnCode = WshShell.Popup ("Удалить файл: " + "\n" + filecoll.item().Name + "?", 0, "удаление скрытых элементов:", 4 + 32);
        filecount = filecount+1;

switch(BtnCode) {
  case 6:
  //WScript.Echo ("Удаление файла");
      filenamedel += filecoll.item()
      filenamedel += "\n"
      fso.Deletefile(filecoll.item())
      break;
  case 7:
  //WScript.Echo ("Сохранение файла");
      filenamesave += filecoll.item()
      filenamesave += "\n"
      break;
}}

    else {
          filenamevis += filecoll.item()
          filenamevis += "\n"}
};

// Блок отработки результата действий с файлами -----------------------------------------------------------------------------------

filenamedel  =  "Удаленные файлы:" + "\n" + filenamedel;
//WScript.Echo ( filenamedel )
filenamesave =  "Сохраненные файлы:" + "\n" + filenamesave;
//WScript.Echo ( filenamesave )
filenamevis  =  "Видимые файлы:" + "\n" +  filenamevis;
//WScript.Echo ( filenamevis )



// Блок определения результата ----------------------------------------------------------------------------------------------------

WScript.Echo (filecount + " : " + foldcount);

if (filecount == 0)
{
        filelist = ls+"Обработка файлов"+ls+"\n"+"Скрытые файлы отсутствуют"+"\n"+"\n"+filenamevis}

    else {
          filelist = ls+"Обработка файлов"+ls+"\n"+filenamedel+"\n"+filenamesave+"\n"+filenamevis};

if (foldcount == 0)
{
        foldlist = ls+"Обработка папок"+ls+"\n"+"Скрытые папки отсутствуют"+"\n"+"\n"+foldnamevis}

    else {
          foldlist = ls+"Обработка папок"+ls+"\n"+foldnamedel+"\n"+foldnamesave+"\n"+foldnamevis};

// Блок вывода результата ---------------------------------------------------------------------------------------------------------

list = "Отчет о выполнении сценария"+"\n"+hs+"\n"+"\n"+foldlist+"\n"+"\n"+filelist;

WScript.Echo (list);

//



Время: 23:48.

Время: 23:48.
© OSzone.net 2001-