|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Перебрать файлы по именам |
|
CMD/BAT - Перебрать файлы по именам
|
Новый участник Сообщения: 1 |
Профиль | Отправить PM | Цитировать Пишу программу, которая должна раскидывать файлы по папкам с схожими именами, а то есть КП-11111_1 КП-11111_2 должны быть помещены в папку КП-11111, файлы НВ-222_1 и НВ-222_2 в папку НВ-222 и т.д. По отдельности эти файлы перемещаюся в папки, но если они находятся в одном каталоге при var = 6, получаются папки КП-111 и НВ-222.
Вопрос: как сделать проверку количества символов в имени файлов или брать имя до нижнего подчеркивания? Имеется код: @echo off setlocal EnableDelayedExpansion set fold=h:\1 set pict=*.png,*.jpg,*.ico,*.gif,*.tif set /p var="Enter the number : " if "%var%" == "0" ( exit ) pushd chdir /d "%fold%" for /f "delims=" %%a in ('dir %pict% /b /a:-d') do ( set Where=%%a set Where1=!Where:~0,%var%! if not exist !Where1! md !Where1! move /y "%%a" !Where1!\ ) popd pause |
|
Отправлено: 07:37, 29-08-2017 |
Ветеран Сообщения: 2708
|
Профиль | Отправить PM | Цитировать Цитата EricScream:
КП-11111_1.* КП-11111_2.* КП-11111.* будут помещены в одну папку. Итд.
@Echo Off Set "BoxIn=Z:\Box_In" Set "Mask=*.png *.jpg *.ico *.gif *.tif" Pushd "%BoxIn%" && ( FOR /F "usebackq tokens=1* delims=_" %%i IN (`Dir /B /A:-D %Mask% 2^>nul`) DO ( If "%%j"=="" ( If Not Exist "%%~ni" Md "%%~ni" Move "%%i" "%%~ni\" >nul ) Else ( If Not Exist "%%i" Md "%%i" Move "%%i_%%j" "%%i\" >nul ) ) ) Popd Если надо вот так: КП-11111_1.* КП-11111_2.*, то:
|
|
------- Последний раз редактировалось megaloman, 29-08-2017 в 12:06. Отправлено: 11:52, 29-08-2017 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Доступ - Доступ по именам в сети | Triarch | Microsoft Windows 7 | 0 | 28-11-2012 08:34 | |
MSFT SQL Server - [решено] Обращение к mssql серверу по dns именам | Joni | Программирование и базы данных | 4 | 10-07-2012 03:50 | |
2008 - Организация доступа по коротким именам. Несколько сегментов. | vanexe1 | Windows Server 2008/2008 R2 | 6 | 27-09-2010 20:53 | |
[решено] Не видит компы в сети по именам, но видит по IP | MANnik | Microsoft Windows 2000/XP | 2 | 11-08-2006 11:41 | |
Клиенты не могут подключиться к ФС по именам \\server, а только по \\IP адресам | wwwSerg | Microsoft Windows NT/2000/2003 | 7 | 24-08-2005 23:57 |
|