Показать полную графическую версию : Перемещение файлов из нескольких папок в одну.
BatizhevNH
21-09-2011, 13:47
Помогите пожалуйста написать батник который должен из папки c:\temp c подпапками забирать все файлы с расширением .XML и перемещать из в папку c:\temp_1.
Прощу еще дать ссылку на какой-нибудь самоучитель по батникам
megaloman
21-09-2011, 19:38
Если при перемещении надо сохранить структуру подпапок, то @Echo Off
FOR /F "usebackq delims=" %%f IN (`xcopy /s /y "D:\Temp\*.xml" "D:\Temp1\"`) DO Del "%%f" >nul 1>nul 2>nul или @Echo off
cls
SetLocal EnableExtensions
SetLocal EnableDelayedExpansion
Cd /d D:\Temp
Move /y *.xml D:\Temp1\
FOR /F "usebackq delims=" %%D IN (`Dir /S /B /A:D`) DO (
Set NDir=%%D
If Exist "!NDir!\*.xml" md !NDir:D:\Temp=D:\Temp1! & Move "!NDir!\*.xml" "!NDir:D:\Temp=D:\Temp1!\
) Если из всех подпапок надо слить файлы в одну папку, при этом не думая о возможном совпадении имён файлов в разных исходных подпапках@Echo Off
cls
Set From=D:\Temp
Set To=D:\Temp1
FOR /R %From% %%f IN (*.xml) DO Move /Y "%%f" "%To%\"
BatizhevNH
23-09-2011, 15:31
@Echo Off cls Set From=D:\Temp Set To=D:\Temp1 FOR /R %From% %%f IN (*.xml) DO Move /Y "%%f" "%To%\" »
это то что нужно. Спасибо.
А как заключить все это в цикл 1 раз в 10 минут?
megaloman
24-09-2011, 17:52
Тут ссылки на источники, где можно ознакомиться с командными файлами. (http://forum.oszone.ru/thread-130222.html)
Здесь описаны способы организовать паузу в бат-файле (http://wiki.oszone.net/index.php/%D0%9F%D0%B0%D1%83%D0%B7%D0%B0_%D0%B2_%D0%BF%D0%B0%D0%BA%D0%B5%D1%82%D0%BD%D0%BE%D0%BC_%D1%84%D0%B0% D0%B9%D0%BB%D0%B5) Один из вариантов:Begin
Echo Вместо этого - то, что у Вас в цикле
ping -n 601 127.0.0.1 > nul
GoTo :BeginНо я бы организовал выполнение батника в назначенных заданиях с нужным интервалом повторения
Наталья1991
14-05-2012, 19:32
ПОМОГИТЕ!!!:)
1.Написать командный файл,принимающий при запуске след.параметры: имя папки, расширение файлов. Командный файл должен разобрать содержимое папки так:все файлы с заданным расширением переместить в папки,имя которых будет содержать дату и расширение,а файлы с другими расширениями в папку others. Все действия командного файла должны быть записаны в файл log.txt(кол-во перемещенных файлов и т.д.) Вот всё,на что смогла сделать:
echo off
echo OC
set Bloknot=%date:~-10%.txt
MD %Bloknot%
set Excel=%date:~-10%.xlsx
MD %Excel%
set Word=%date:~-10%.docx
MD %Word%
set Others=%date:~-10%.others
MD %Others%
move *.txt %date:~-10%.txt
move *.xlsx %date:~-10%.xlsx
2. Написать командный файл, который формирует первый и выводит суммарное количество скопируемых и перемещенных файлов каждого типа
буду ооооочень признательна,если поможете!!!:)
move *.docx %date:~-10%.docx
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.