Войти

Показать полную графическую версию : [решено] Поиск на компьютере изображений через bat


river123
13-08-2010, 20:10
Проблема вот в чем. Хочу найти через bat все изображения на D: и скопировать их в определённую папку на С: (без использования команды xcopy, а то она копирует все дерево каталогов, но так не удобно). Пробовал сам что-то написать, но всё безрезультатно.

@echo off
md "C:\Images\"
for /R %%a in ("D:\*") do copy /y "%%a\*.jpg" "C:\Images\"
pause

По идее, я думал, что batник пробежится по всем папкам на D: (т.к присутствует параметр R - рекурсивно т.е batник обрабатывает дерево каталогов) и если в них он найдёт файлы изображений, то они скопируются в указанную папку на C: Но командный интерпретатор вообще ничего не выполняет и не пишет об ошибках в командах.

gora
13-08-2010, 20:32
командный интерпретатор вообще ничего не выполняет »
А если так?@echo off
md "C:\Images\"
for /R "D:" %%a in (*.jpg) do copy /y "%%a" "C:\Images\"
pause

river123
13-08-2010, 21:15
А если так?
Код:
@echo off
md "C:\Images\"
for /R "D:" %%a in (*.jpg) do copy /y "%%a" "C:\Images\"
pause

Спасибо, помогло, но не мог бы ты разъяснить по подробнее, как работает вот эта команда. Почему локальный диск D: вынесен из множества in на передний план?

gora
13-08-2010, 21:22
Почему локальный диск D: вынесен из множества in на передний план? »
Согласно синтаксиса этой команды:
FOR /R [[диск:]путь] %переменная IN (набор) DO команда [параметры]

Выполнение команды для каталога [диск:]путь, а также для всех
подкаталогов этого пути. Если после ключа /R не указано имя каталога,
выполнение команды начинается с текущего каталога.
Если вместо набора указана только точка (.), команда выводит список
всех подкаталогов.

river123
13-08-2010, 22:15
Спасибо, всё понял. Буду чаще смотреть help <команда>




© OSzone.net 2001-2012