|
Название | ToRoot |
Имя файла (*.txt) | ToRoot.txt |
Описание | Снижает уровень вложенности всех файлов и директорий в текущей директории |
Автор | Вахмурка |
Параметры | ("%P") |
Вызываемые плагины | file, win, tc |
Иконка | |
Версия | 1.0 |
Дата обновления | 27.01.2006 |
Вызываемая утилита | Xxcopy |
local Path = file.folder(arg(1)) Path = file.folder(Path) local hwnd = win.handle("c=TTOTAL_CMD") local List, Count, Dest, Folder for(1) List = file.listfiles(Path, "2") Count = line(List, 0) if(Count < 2) do Folder = ifelse(Dest == "", remove(arg(1), -1), Dest) Dest = Path Path = file.folder(Path) else break endif endfor if(Dest == "") quit Path = arg(1) ++ "*.* " ++ Dest ++ " /s /rc /yy" file.runwait(0, "путь\xxcopy.exe", Path, "", "hide") tc.cd(hwnd, Dest) wait 1 file.delete(Folder) win.postmessage(hwnd, 0x400+51, 540, 0)
Имеется следующая структура директорий:
Folder1
Folder2
Folder3
Folder4
Folder5
Folder6
File1
File2
File3
Иными словами, есть цепочка вложенных директорий, каждая из которых содержит только одну директорию. В нашем примере это цепочка Folder2-Folder3-Folder4. Скрипт перемещает все файлы из текущей директории (подчеркнута) в директорию Folder3, чтобы сохранить логику вложенности, после чего удаляет все пустые поддиректории. Результат будет следующим:
Folder1
Folder2
Folder3
Folder6
File1
File2
File3
Иными словами, если в полном пути (в нашем случае Folder2\Folder3\Folder4\Folder5) есть такие директории, которые содержат только одну поддиректорию, все они (за исключением первой) будут удалены и путь превратится в Folder2\Folder3. Можно сказать, что скрипт ликвидирует "избыточную вложенность".
На главную | Все о Total Commander | PowerPro | PowerPro & Total Commander |