2016-04-13 2 views
1

Недавно я хотел создать .bat-скрипт, который будет перемещать файлы .avi из подпапок в указанную директорию в другой каталог.Перемещение файлов с помощью сценария .bat в Windows 10

например.

H: \ MAINDIRECTORY \ dir1 \ avi1.avi
H: \ MAINDIRECTORY \ dir2 \ avi2.avi

H: \ MAINDIRECTORY \ dir3 \ avi3.avi

.. ..

В один каталог, называемый, например,

H: \ Фильмы

я сделал скрипт, который выглядит примерно так

@echo off 
move H:\Pobrane\*\*.avi H:\Filmy 

Но когда я пытаюсь выполнить его, я получил что-то вроде этого:

the file name, directory name or volume lable syntax is incorrect 

Пожалуйста, помогите мне найти выход из этой ситуации.

+0

двигаться не поддерживает диких карт – npocmaka

+1

@npocmaka, движение поддерживает групповые символы в именах файлов, а не для каталогов. Попробуйте простой цикл 'FOR', чтобы перебирать каталоги, а затем перемещать файлы. –

ответ

1

В движении не поддерживает дикие карты, которые вы можете попробовать с for /r

@echo off 
for /r "H:\Pobrane\" %%# in (*.avi) do (
    move /y "%%~f#" "H:\Filmy" 
) 
+1

' move' поддерживает дикие карты. –

+0

Это работает, но, пожалуйста, поместите некоторое объяснение, например: %% # или %% ~ f # – MajQel

+0

А также перемещение всей родительской директории с определенными файлами было бы неплохо. – MajQel