Создание подкаталогов

Обсуждение вопросов автоматизации Total Commander с помощью сторонних программ и скриптовых технологий.

Модераторы: Avada, CaptainFlint, Nik, d-view, Моторокер

Zombie
Сообщения: 16
Зарегистрирован: Пт июл 01, 2011 20:13

Создание подкаталогов

Сообщение Zombie »

Доброго времени суток.....

Задача такая: имеем кучу папок с файлами, внутри каждой папки нужно создать подкаталог например "111" и переместить в этот каталог все файлы из корневого каталога.

З.Ы.

"куча" каталогов создается вот этим скриптом от Batya
Аватара пользователя
Avada
Сообщения: 10541
Зарегистрирован: Пт авг 01, 2008 16:17
Откуда: Россия, Саратов

Сообщение Avada »

Zombie
1. По поводу принятого на форуме оформления скриптов и их фрагментов см. здесь
2. По поводу самого цитирования полного скрипта вместо ссылки на источник см. здесь. Пост-источник в таком случае приводится в режиме отдельного сообщения (см. ссылку "Отдельно" над постом).
Соблюдаем правила.
Пост исправлен.
Даже самая богатая фантазия
Не представит себе наши безобразия.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Avada
Спасибо, теперь можно спрашивать.

Zombie
Корневой каталог - это родительский, т.е. один из тех, который будет выделен? Можно конечно и не выделять, тогда будут обрабатываться все подкаталоги активной папки.
Zombie
Сообщения: 16
Зарегистрирован: Пт июл 01, 2011 20:13

Сообщение Zombie »

Flasher
в общем да, немного уточню есть несколько тысяч файлов типа "ааа.xml" "ббб.xml" и тд
их нужно поместить в папки. т.е. скрипт создает папку используя имя файла(ааа.xml) НО копирует файл ааа.xml не просто в каталог aaa, а в каталог ааа\1\ааа.xml

так вроде понятней написал.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Т.е. файлы aaa.xml, 666.xml изначально лежат в в папках "aaa" и "666" соответственно? Правильно? Кроме них ещё что-то в каждом из этих каталогов есть?
Zombie
Сообщения: 16
Зарегистрирован: Пт июл 01, 2011 20:13

Сообщение Zombie »

да,файлы aaa.xml, 666.xml изначально лежат в в папках "aaa" и "666". все файлы с одним расширением но кол-во файлов в папках разное.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Код: Выделить всё

' Cоздание подкаталога в папках активной панели
' и перемещение в него одноимённого файла
' Параметры: "%P" <расширение файлов> <имя создаваемой папки>
' Пример: "%P" xml 1
'================================================
With CreateObject("Scripting.FileSystemObject")
On Error Resume Next
  Set FF = .GetFolder(WScript.Arguments(0))
  For Each F In FF.SubFolders
    For Each P In F.Files
      If F.Name = .GetBaseName(P) And _
        .GetExtensionName(P)=WScript.Arguments(1) Then
        .CreateFolder F & "\" & WScript.Arguments(2)
        .MoveFile P, F & "\" & WScript.Arguments(2) & "\"
      End If
    Next
  Next
End With
Wscript.Quit
Последний раз редактировалось Flasher Сб июл 02, 2011 12:32, всего редактировалось 1 раз.
Zombie
Сообщения: 16
Зарегистрирован: Пт июл 01, 2011 20:13

Сообщение Zombie »

не работает :(
запускал через тотал с параметрами "%P" xml 1
пробовал запускать на 1 папке и на нескольких выделенных ничего не произошло.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Zombie
В каком смысле на "1 папке и на нескольких"?
Zombie
Сообщения: 16
Зарегистрирован: Пт июл 01, 2011 20:13

Сообщение Zombie »

на одной выделенной и на нескольких выделенных папках в тотале.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

А где в названии скрипта написано про выделение? Выделение тут роли не играет.
Последний раз редактировалось Flasher Сб июл 02, 2011 12:58, всего редактировалось 2 раза.
Zombie
Сообщения: 16
Зарегистрирован: Пт июл 01, 2011 20:13

Сообщение Zombie »

Flasher
я в этом мало разбираюсь думал это принципиально :oops:

для примера

есть папка PFR-700-Y-2010-ORG-000-000-023971 в ней 2 файла: PFR-700-Y-2010-ORG-000-000-023971-DCK-00001-DPT-000000-DCK-00000.XML и PFR-700-Y-2010-ORG-000-000-023971-DCK-01002-DPT-000000-DCK-00000.XML

после работы скрипта должно получиться:
PFR-700-Y-2010-ORG-000-000-023971\1\PFR-700-Y-2010-ORG-000-000-023971-DCK-00001-DPT-000000-DCK-00000.XML
PFR-700-Y-2010-ORG-000-000-023971-DCK-01002-DPT-000000-DCK-00000.XML
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Zombie
Предлагаю по-своему:

Имеем структуру:

- Активная папка\
  • - aaa\
    • - aaa.txt
      - aaa.xml
      - хрюхрюхрю.bmp
  • - 666\
    • - 666.flv
      - 666.xml
      - блаблабла.xxx
Находимся в активной папке, жмём кнопку и получается:

- Активная папка\
  • - aaa\
    • - 1\
      • - aaa.xml
    • - aaa.txt
      - хрюхрюхрю.bmp
  • - 666\
    • -1\
      • - 666.xml
    • - 666.flv
      - блаблабла.xxx
Так? Если да, то всё должно работать.
Zombie
Сообщения: 16
Зарегистрирован: Пт июл 01, 2011 20:13

Сообщение Zombie »

почти

Имеем структуру:
- aaa\
- aaa.xml
- aaa01.xml
- aaa02.xml
жмём кнопку и должно получиться:
- aaa\
- 1\
- aaa.xml
- aaa01.xml
- aaa02.xml

,но не получается :(
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Zombie писал(а):- aaa01.xml
- aaa02.xml
Не понял. Это тоже должно переместиться в папку "1"?
Если да, то где было об этом написано? Я не телепат...
Хотя aaa.xml всё равно должен был переместиться. Папки "1" также не создаются?
Ответить