|
0 / 0 / 0
Регистрация: 07.08.2021
Сообщений: 20
|
|
Создание папки с названием из имени файла (без учета нумерации файлов)07.08.2021, 20:30. Показов 5568. Ответов 9
Метки нет (Все метки)
Имеется множество каталогов следующего вида:
D:\Files\20210512_Москва\ Петровский_АВ.rar Петровский_АВ (1).rar Петровский_АВ (2).rar D:\Files\20210614_Москва\ Петровский_АВ.rar Петровский_АВ (1).rar Названия повторяющихся файлов дополнены порядковым номеров в скобках через пробел после фамилии. Нужно организовать перемещение файлов в единый каталог, в котором должны создаваться новые папки с ФИО. Для того, чтобы файлы с одинаковыми названиями не подменили друг друга, к названию файла хотелось бы добавить дату и город из названия каталога. Ожидаемый результат: D:\Единый_Каталог\Петровский_АВ\Петровск ий_АВ_20210512_Москва.rar D:\Единый_Каталог\Петровский_АВ\Петровск ий_АВ (1)_20210512_Москва.rar D:\Единый_Каталог\Петровский_АВ\Петровск ий_АВ (2)_20210512_Москва.rar D:\Единый_Каталог\Петровский_АВ\Петровск ий_АВ_220210614_Москва.rar D:\Единый_Каталог\Петровский_АВ\Петровск ий_АВ (1)_20210614_Москва.rar Не могу понять как запихать в переменную ФИО без цифр для создания папки. По идее признак для создаваемой папки - отсутствие символа кавычек или пробела в имени файла. И как добавить в переменную название каталога, в котором лежат файлы?
0
|
|
| 07.08.2021, 20:30 | |
|
Ответы с готовыми решениями:
9
Распределение файлов из папки по части имени файла в папки, содержащие файлы с похожим именем (квитовка)
Создание папки по имени файла и перемещение файла в эту папку |
|
6994 / 2880 / 1108
Регистрация: 06.06.2017
Сообщений: 9,775
|
|||||||
| 08.08.2021, 00:27 | |||||||
Сообщение было отмечено STM88 как решение
РешениеНужно искать rar-файлы c Имя_ИО в начале? Или они все такие по глубине папок? Ладно, пусть будет поиск. Батник в OEM 866:
1
|
|||||||
|
0 / 0 / 0
Регистрация: 07.08.2021
Сообщений: 20
|
||
| 08.08.2021, 05:00 [ТС] | ||
|
Спасибо за Ваш ответ! Отличный код, правда в конце возникает небольшая проблема: В каталог "D:\Единый_Каталог\Фамилия_ИО" перемещается только один файл (первый), остальные файлы "не найдены" (судя по всему из-за rd). Для меня это не критично, убрал rd, пустые папки затру отдельной строкой кода. И еще возникает синтаксическая ошибка "пoтерян aргумент по умoлчанию", отсылает к хэлпу "where /?". Вот тут сомнения, насколько это критично? Несмотря на ошибку, скрипт свою задачу на кусочке тестовых данных выполнил, но все ли пройдет гладко на живых данных, сам факт возникновения ошибки настораживает.
0
|
||
|
6994 / 2880 / 1108
Регистрация: 06.06.2017
Сообщений: 9,775
|
|||
| 08.08.2021, 06:20 | |||
^|findstr/erc:"\\[А-Я][а-я]*_[А-Я][А-Я][_ ]*[^\\]*\.rar".А я ещё думаю, почему 9 строка на символ короче.
1
|
|||
|
0 / 0 / 0
Регистрация: 07.08.2021
Сообщений: 20
|
|
| 08.08.2021, 11:00 [ТС] | |
|
Вы правы, спасибо за помощь!
Добавлено через 3 часа 57 минут FlasherX, Я обнаружил на старых данных, что даты в названиях папок не соответствуют фактическим (видимо, папки какое-то время именовались вручную). Но корректные даты указаны в дате изменения файлов. Каким образом подправить ваш скрипт, чтобы он переименовал файлы исходя из фактической даты их изменения, при этом из папки продолжал брать название города. По идее из названия папки нужно указать только [А-Я][а-я] и символ "-" для некоторых городов? Шаблон ожидаемого имени как и в первом посте: "Петровский_АВ (1)_20210512_Москва.rar"
0
|
|
|
6994 / 2880 / 1108
Регистрация: 06.06.2017
Сообщений: 9,775
|
|||||||
| 08.08.2021, 11:48 | |||||||
1
|
|||||||
|
0 / 0 / 0
Регистрация: 07.08.2021
Сообщений: 20
|
||||
| 08.08.2021, 13:02 [ТС] | ||||
|
Добавлено через 5 минут Добавлено через 2 минуты
0
|
||||
|
6994 / 2880 / 1108
Регистрация: 06.06.2017
Сообщений: 9,775
|
|||
| 08.08.2021, 14:29 | |||
|
STM88, так это ваша идея была, подставлять даты из файлов. Значит, совпадение есть и по датам. Теперь см. совпадение по времени. Тоже есть? И смотреть дату/время надо не в тестовых файлах, а в целевых.
0
|
|||
|
0 / 0 / 0
Регистрация: 07.08.2021
Сообщений: 20
|
|
| 08.08.2021, 16:15 [ТС] | |
|
FlasherX, ваши труды не напрасны, мне понравился ваш код и я буду его использовать. Спасибо вам большое! Тем более на новых файлах все отлично, а их подавляющее большинство. На старых файлах вышла накладочка, ну не страшно, утилитами подправлю вручную, придется повозится, ну ничего.
Я сам виноват, все сразу не проверил и сформировал задание не корректно.
0
|
|
|
6994 / 2880 / 1108
Регистрация: 06.06.2017
Сообщений: 9,775
|
|
| 08.08.2021, 19:52 | |
|
STM88, дело не только в напрасности трудов, но и в ответах на мои вопросы. Про совпадение времени я спрашиваю, чтобы подставлять yyyyMMddHHmmss. Если есть совпадающие таймкоды в файлах с совпадающими именами, то проще сразу было копировать по счётчику вместо запрошенных окончаний. Про копирование/перемещение по счётчику тут полно тем.
Но если всё и так устраивает, то пожалуйста, конечно.
0
|
|
| 08.08.2021, 19:52 | |
|
Помогаю со студенческими работами здесь
10
Создание папки по части имени файла Создание папки, запоминание имени файла
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20%
kYBz3eJf3jQ
|
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
|
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
|
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора
Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2.
Задача: уведомлять пользователя, если. . .
|
|
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
|
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2.
Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
|
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
|
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
|