Форум программистов, компьютерный форум, киберфорум
Batch (CMD/BAT)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 18.07.2011
Сообщений: 117

Создание каталогов из имени файла и перемещение самого файла в каталоги. Нужен Bat

25.11.2022, 16:07. Показов 698. Ответов 4

Студворк — интернет-сервис помощи студентам
Приветствую всех!
Нужна помощь, есть каталог, в котором более 2500 файлов со следующей структурой имени:
"Часть1 Часть2 Часть3.расширение"
Необходимо создать структуру:
Часть1 (папка)
Часть2 (папка)
"Часть1 Часть2 Часть3.расширение" (файл)
Нужен батник, который все сделает из каталога, в который его положить.
Прошу помощи.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
25.11.2022, 16:07
Ответы с готовыми решениями:

Создание папки по имени файла и перемещение файла в эту папку
Добрый день , Помогите пожалуйста с батником. У меня есть целая куча файлов в одной папке, такаго образца P_434308546FM.JPG ...

Запуск bat-файла из vbs-файла от имени указанного пользователя
Здравствуйте форумчане, натолкните пожалуйста как можно реализовать выполнение bat файла такого вида: @echo off if exist...

Запуск файла в директории с .bat, когда .bat запущен от имени администратора
Здравствуйте. Имею бат, он должен запускать файл "<тут директория батника>\n1.bat". Но если даже вписывать cd "%~dp0" и...

4
 Аватар для Angry Old Man
3005 / 745 / 313
Регистрация: 26.03.2022
Сообщений: 1,394
Записей в блоге: 1
25.11.2022, 20:23
Лучший ответ Сообщение было отмечено Perceff как решение

Решение

Если в частях нет пробелов и батник внутри папки с файлами (маску уточните сами, как минимум, в расширении)
Windows Batch file
1
2
3
4
5
6
7
8
9
@Echo Off
    Set "Mask=* * *.txt"
    FOR /F "usebackq tokens=1,2* delims= " %%i In (`Dir 2^>nul /B /A:-D "%Mask%"`) DO (
        If Exist "%%i %%j %%k" If Not "%%j"=="" If Not "%%k"=="" (
            2>nul Md "%%i\%%j"
            >nul Move /Y "%%i %%j *%%~xk" "%%i\%%j\"
        )
    )
Exit /B
1
0 / 0 / 0
Регистрация: 18.07.2011
Сообщений: 117
28.11.2022, 13:06  [ТС]
@Angry Old Man Благодарю за ответ, но не могу понять что не так:
Project Contracts (25.11.22).xls перегруппировал на ура, а все остальные файлы, типа:
1-10-1318 Additional 3703403v2.DOC не хочет ни в какую, я так понимаю все дело в цифрах?
0
 Аватар для Angry Old Man
3005 / 745 / 313
Регистрация: 26.03.2022
Сообщений: 1,394
Записей в блоге: 1
28.11.2022, 14:15
Лучший ответ Сообщение было отмечено Perceff как решение

Решение

Вот список файлов
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
1-10-1318 Additional 3703403v2.DOC
1-10-1318 Additional 3703404v2.DOC
1-10-1318 Additional 3703405v2.DOC
1-10-1318 Additional1 3703403v2.DOC
1-10-1318 Additional1 3703404v2.DOC
1-10-1318 Additional1 3703405v2.DOC
1-10-1318 Additional2 3703403v2.DOC
1-10-1318 Additional2 3703404v2.DOC
1-10-1318 Additional2 3703405v2.DOC
1-10-1319 Additional 3703403v2.DOC
1-10-1319 Additional 3703404v2.DOC
1-10-1319 Additional 3703405v2.DOC
1-10-1319 Additional1 3703403v2.DOC
1-10-1319 Additional1 3703404v2.DOC
1-10-1319 Additional1 3703405v2.DOC
1-10-1319 Additional2 3703403v2.DOC
1-10-1319 Additional2 3703404v2.DOC
1-10-1319 Additional2 3703405v2.DOC
1-10-1320 Additional 3703403v2.DOC
1-10-1320 Additional 3703404v2.DOC
1-10-1320 Additional 3703405v2.DOC
1-10-1320 Additional1 3703403v2.DOC
1-10-1320 Additional1 3703404v2.DOC
1-10-1320 Additional1 3703405v2.DOC
1-10-1320 Additional2 3703403v2.DOC
1-10-1320 Additional2 3703404v2.DOC
1-10-1320 Additional2 3703405v2.DOC
Вот батник - изменил только маску
Windows Batch file
1
2
3
4
5
6
7
8
9
@Echo Off
    Set "Mask=* * *.doc"
    FOR /F "usebackq tokens=1,2* delims= " %%i In (`Dir 2^>nul /B /A:-D "%Mask%"`) DO (
        If Exist "%%i %%j %%k" If Not "%%j"=="" If Not "%%k"=="" (
            2>nul Md "%%i\%%j"
            >nul Move /Y "%%i %%j *%%~xk" "%%i\%%j\"
        )
    )
Exit /B
Вот структура папок после отработки батника
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
Z:\SOFT_ARC
├───1-10-1318
│   ├───Additional
│   ├───Additional1
│   └───Additional2
├───1-10-1319
│   ├───Additional
│   ├───Additional1
│   └───Additional2
└───1-10-1320
    ├───Additional
    ├───Additional1
    └───Additional2
Вот файлы в подпапках
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
Z:\Soft_Arc\1-10-1318\Additional\1-10-1318 Additional 3703403v2.DOC
Z:\Soft_Arc\1-10-1318\Additional\1-10-1318 Additional 3703404v2.DOC
Z:\Soft_Arc\1-10-1318\Additional\1-10-1318 Additional 3703405v2.DOC
Z:\Soft_Arc\1-10-1318\Additional1\1-10-1318 Additional1 3703403v2.DOC
Z:\Soft_Arc\1-10-1318\Additional1\1-10-1318 Additional1 3703404v2.DOC
Z:\Soft_Arc\1-10-1318\Additional1\1-10-1318 Additional1 3703405v2.DOC
Z:\Soft_Arc\1-10-1318\Additional2\1-10-1318 Additional2 3703403v2.DOC
Z:\Soft_Arc\1-10-1318\Additional2\1-10-1318 Additional2 3703404v2.DOC
Z:\Soft_Arc\1-10-1318\Additional2\1-10-1318 Additional2 3703405v2.DOC
Z:\Soft_Arc\1-10-1319\Additional\1-10-1319 Additional 3703403v2.DOC
Z:\Soft_Arc\1-10-1319\Additional\1-10-1319 Additional 3703404v2.DOC
Z:\Soft_Arc\1-10-1319\Additional\1-10-1319 Additional 3703405v2.DOC
Z:\Soft_Arc\1-10-1319\Additional1\1-10-1319 Additional1 3703403v2.DOC
Z:\Soft_Arc\1-10-1319\Additional1\1-10-1319 Additional1 3703404v2.DOC
Z:\Soft_Arc\1-10-1319\Additional1\1-10-1319 Additional1 3703405v2.DOC
Z:\Soft_Arc\1-10-1319\Additional2\1-10-1319 Additional2 3703403v2.DOC
Z:\Soft_Arc\1-10-1319\Additional2\1-10-1319 Additional2 3703404v2.DOC
Z:\Soft_Arc\1-10-1319\Additional2\1-10-1319 Additional2 3703405v2.DOC
Z:\Soft_Arc\1-10-1320\Additional\1-10-1320 Additional 3703403v2.DOC
Z:\Soft_Arc\1-10-1320\Additional\1-10-1320 Additional 3703404v2.DOC
Z:\Soft_Arc\1-10-1320\Additional\1-10-1320 Additional 3703405v2.DOC
Z:\Soft_Arc\1-10-1320\Additional1\1-10-1320 Additional1 3703403v2.DOC
Z:\Soft_Arc\1-10-1320\Additional1\1-10-1320 Additional1 3703404v2.DOC
Z:\Soft_Arc\1-10-1320\Additional1\1-10-1320 Additional1 3703405v2.DOC
Z:\Soft_Arc\1-10-1320\Additional2\1-10-1320 Additional2 3703403v2.DOC
Z:\Soft_Arc\1-10-1320\Additional2\1-10-1320 Additional2 3703404v2.DOC
Z:\Soft_Arc\1-10-1320\Additional2\1-10-1320 Additional2 3703405v2.DOC
Цифры не при чем, разделитель - пробел, как Вы указывали в постановке. Ищите загвоздку у себя. Может маску переврали? Либо Doc - o или c русские?
1
0 / 0 / 0
Регистрация: 18.07.2011
Сообщений: 117
28.11.2022, 15:49  [ТС]
Еще раз огромная благодарность, разобрались, не работало видимо из-за политик файлового сервера (запускал на сервере). Локально все работает.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
28.11.2022, 15:49
Помогаю со студенческими работами здесь

Разница в работе bat-файла при его запуске от имени простого пользователя и от имени администратора
Здравствуйте. Пытаюсь создать .bat который: создаёт папку %ProgramFiles%\MyProg и копирует туда файлы создаёт папку...

Создание bat файла, который показывает полный путь файла
доброго вечера, форумчане! Помогите написать bat файлик, который будет выводить полный путь файла. Т.е вводим в командную строку имя...

Узнать имя файла самого bat
Есть файл example.bat (но он будет постоянно переименовываться), нужно, чтобы при запуске его, он узнавал своё имя(без расширения) и это...

Создание и редактирование cmd-файла с использованием bat-файла
Нужно создать cmd файл в %systemroot% и отредактировать его из bat'ника

Создание bat файла для компиляции lst файла
Напишите, пожалуйста, как написать в бат файле, чтобы компилировался lst файл, который можно просмотреть через текстовый редактор....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-text-sdl3-c. zip finish-text-sdl3-cpp. zip
Жизнь в неопределённости
kumehtar 23.03.2026
Жизнь — это постоянное существование в неопределённости. Например, даже если у тебя есть список дел, невозможно дойти до точки, где всё окончательно завершено и больше ничего не осталось. В принципе,. . .
Модель здравоСохранения: работники работают быстрее после её введения.
anaschu 23.03.2026
geJalZw1fLo Корпорация до введения программа здравоохранения имела много невыполненных работниками заданий, после введения программы количество заданий выросло. Но на выплатах по больничным это. . .
Контроль уникальности заводского номера
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере нетипового документа выдачи шин для спецтехники с табличной частью, разработанного в конфигурации КА2. Данные берутся из. . .
Хочу заставить корпорации вкладываться в здоровье сотрудников: делаю мат модель здравосохранения
anaschu 22.03.2026
e7EYtONaj8Y Z4Tv2zpXVVo https:/ / github. com/ shumilovas/ med2. git
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru