Необходимо копировать фотографии с телефона через For в файле .BAT
Суть скрипта в:
1) Запрос даты
2) Формирование %now% (фрагмент имени) на основе "названия_даты_*.jpg"
3) Через For поиск всех файлов подходящих под часть названия и копирования их в "D:\Admin\Desktop\_Фотографии_\"
Сам скрипт
@Echo off
chcp ANSI :кодировка позволяющая работать с кирилицей
======================
:: Запрос даты
set now=%DATE: =0%
for /f "tokens=1-7 delims=/-:., " %%a in ( "%now%" ) do (
set now=IMG_%%c%%b%%a_* ::Формирования фрагмента имени файла (* означает пропуск продолжения имени файла)
)
:: Копирование фотографий по указанному пути с подходящей датой
for /d %%B in (Компьютер\Название телефона\Внутренняя память\DCIM\Camera\) do (%now%.jpg) copy %%B (D:\Admin\Desktop\_Фотографии_\)
pause >nul
При запуске не работает, но и не выдает ошибки (просто закрывается), если сделать \Camera\%now%.jpg) copy %%B то будет жаловаться, что не смог найти файл
Умеют же люди написать много и по сути не сказать ничего. Если задача выбрать фото с определённой датой, то она решается проще через forfiles, по дате создания
Хотя, судя по тексту, засада лишь в кодировке пути. Причём здесь ANSI?
Очевидные вещи:
Тестировать можно (и даже нужно) в Фаре и простым dir примером.
скажем dir /b "название телефона(?)\Внутренняя память\DCIM\Camera\*.jpg"
Имя можно взять из Проводника. Опять же, причём здесь "Компьютер\", оно из локалки?
или для отладки подставить echo перед copy
Надеюсь кавычки не забыты?
Да, формат даты возможен разный. %DATE: =0% это кучеряво. Зачем ноль впереди ставить?
На круг, тут промахов не один может случиться
Убери строчку Еcho Off и увидишь что она делает