|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Рандомное распределение файлов в заданные папки |
|
CMD/BAT - [решено] Рандомное распределение файлов в заданные папки
|
Новый участник Сообщения: 3 |
Профиль | Отправить PM | Цитировать
Добрый день.
У меня есть определенное количество файлов в папке из них 2 всегда с одинаковым именем, но разным расширением eps и jpg, как пример D12112022-02_01.eps и D12112022-02_01.jpg И вот задача рандомно перенести эти двойки в одну папку с номерами от 1 до 31( уже созданными и там могут быть другие файлы), чтобы каждая пара в разную папку, без переименовывания файлов. Очень наболело уже вручную это делать изо дня в день Спасибо за внимание |
|
Отправлено: 20:02, 15-11-2022 |
Ветеран Сообщения: 2708
|
Профиль | Отправить PM | Цитировать @Echo Off cls Set "BoxIn=Z:\Box_In" Set "Name=D*_??" Set "Ext1=jpg" Set "Ext2=eps" Set "BoxOut=Z:\Box_Out" Set /A Nfold=31 For %%f In (1,1,10) Do Call Set /A Rnd=%%Random%% FOR %%f IN ("%BoxIn%\%Name%.%Ext1%") Do ( If Exist "%%~dpnf.%Ext2%" Call :NumFile "%%~dpnf" ) FOR /F "usebackq skip=%Nfold% delims==" %%f IN (`2^>nul Set "@@"`) DO Set "%%f=" Set /A i=101 FOR /F "usebackq tokens=2 delims==" %%f IN (`2^>nul Set "@@"`) DO ( Call Set "ii=%%i:~-2%%" 2>nul Call Md "%BoxOut%\%%ii%%" >nul Call Move "%%f.%Ext1%" "%BoxOut%\%%ii%%\" >nul Call Move "%%f.%Ext2%" "%BoxOut%\%%ii%%\" Call Set /A i+=1 ) Pause Exit /B :NumFile Set /A Rnd=10000+32768*%Random%/32768 >nul 2>&1 Set "@@%Rnd%"&& GoTo :NumFile Set "@@%Rnd%=%~1" Exit /B |
------- Отправлено: 21:12, 15-11-2022 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
fascinating rhythm Сообщения: 6491
|
Профиль | Отправить PM | Цитировать |
------- Отправлено: 21:23, 15-11-2022 | #3 |
Новый участник Сообщения: 3
|
Профиль | Отправить PM | Цитировать Powershell сработал, при использовании bat ничего не происходит, но в любом случае огромное спасибо)
|
Отправлено: 19:18, 16-11-2022 | #4 |
Ветеран Сообщения: 2708
|
Профиль | Отправить PM | Цитировать yellow11, Вы свои пути правильно указали вместо моих?
Set "BoxIn=Z:\Box_In" Set "BoxOut=Z:\Box_Out" Если пути не верны, то Цитата yellow11:
|
||
------- Отправлено: 22:26, 16-11-2022 | #5 |
Новый участник Сообщения: 3
|
Профиль | Отправить PM | Цитировать Спасибо, поправил путь, все отлично работает
|
Отправлено: 09:11, 17-11-2022 | #6 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - Распределение артов в папки по 10 штук | st3r | Скриптовые языки администрирования Windows | 3 | 12-01-2020 17:40 | |
CMD/BAT - [решено] Рандомное копирование файлов по критерию | arioo7 | Скриптовые языки администрирования Windows | 10 | 06-01-2019 09:23 | |
CMD/BAT - [решено] Переименовать конечные символы файлов на заданные по ходу скрипта | Alexander_88 | Скриптовые языки администрирования Windows | 7 | 07-04-2018 20:42 | |
Любой язык - [решено] Распределение файлов в каталоге | Тишина | Скриптовые языки администрирования Windows | 2 | 26-04-2013 17:09 | |
CMD/BAT - [решено] Перемещение файлов по списку в заданные директории | 929151 | Скриптовые языки администрирования Windows | 4 | 16-11-2012 01:56 |
|