Доброго дня друзья!
Прошу помощи у гуру. Что нужно:
Имеется папка с кучей картинок у каждой своё имя.jpg
требуется поместить каждую картинку в папку с таким же именем (папки заранее не подготовлены)
Например картинка 1.jpg в папку 1, картинка 2.jpg в папку 2 и т д
Здравствуйте, @wrappan !
Добро пожаловать на SafeZone.
CMD/BATCH:
@echo off
SetLocal EnableExtensions
cd /d "%~dp0"
:: укажите папку (по умолчанию - точка, текущая папка)
set folder=.
for %%a in ("%folder%\*.jpg") do 2>NUL md "%%~na" & move /y "%%a" "%%~na"
pause
C:\Users\Alex>move /?
Перемещение файлов и переименование файлов и папок
Перемещение одного или более файлов:
MOVE [/Y | /-Y] [диск:][путь]имя_файла1[,...] назначение
1 - источник 2 - назначение
CMD/BATCH:
%~I - из переменной %I удаляются обрамляющие кавычки (")
%~fI - переменная %I расширяется до полного имени файла
%~dI - из переменной %I выделяется только имя диска
%~pI - из переменной %I выделяется только путь к файлу
%~nI - из переменной %I выделяется только имя файла
%~xI - из переменной %I выделяется расширение имени файла
%~sI - полученный путь содержит только короткие имена
%~aI - переменная %I расширяется до атрибутов файла
%~tI - переменная %I расширяется до даты /времени файла
%~zI - переменная %I расширяется до размера файла
%~$ПУТЬ:I - проводится поиск по каталогам, заданным в
переменной среды ПУТЬ, и переменная %I
заменяется на полное имя первого найденного
файла. Если переменная ПУТЬ не определена или
в результате поиска не найден ни один файл,
то этот модификатор заменяется на пустую
строку.
%%a - полное имя объекта на текущей итерации цикла
%%~na - только имя файла (без расширения).
С одним аргументом работать будет, если установить целевой каталог в качестве текущего.
Т.е., если не указан второй аргумент, то команда по-умолчанию, подставит туда текущий каталог.