Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Перемещение файлов из нескольких папок в одну.

Ответить
Настройки темы
CMD/BAT - Перемещение файлов из нескольких папок в одну.

Новый участник


Сообщения: 2
Благодарности: 0

Профиль | Отправить PM | Цитировать


Помогите пожалуйста написать батник который должен из папки c:\temp c подпапками забирать все файлы с расширением .XML и перемещать из в папку c:\temp_1.

Прощу еще дать ссылку на какой-нибудь самоучитель по батникам

Отправлено: 13:47, 21-09-2011

 

Ветеран


Contributor


Сообщения: 2708
Благодарности: 1684

Профиль | Отправить PM | Цитировать


Если при перемещении надо сохранить структуру подпапок, то
Код: Выделить весь код
@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%\"

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.


Последний раз редактировалось megaloman, 21-09-2011 в 20:40.

Это сообщение посчитали полезным следующие участники:

Отправлено: 19:38, 21-09-2011 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 2
Благодарности: 0

Профиль | Отправить PM | Цитировать


Цитата megaloman:
@Echo Off cls Set From=D:\Temp Set To=D:\Temp1 FOR /R %From% %%f IN (*.xml) DO Move /Y "%%f" "%To%\" »
это то что нужно. Спасибо.
А как заключить все это в цикл 1 раз в 10 минут?

Отправлено: 15:31, 23-09-2011 | #3


Ветеран


Contributor


Сообщения: 2708
Благодарности: 1684

Профиль | Отправить PM | Цитировать


Тут ссылки на источники, где можно ознакомиться с командными файлами.
Здесь описаны способы организовать паузу в бат-файле Один из вариантов
Код: Выделить весь код
:Begin
Echo Вместо этого - то, что у Вас в цикле
ping -n 601 127.0.0.1 > nul
GoTo :Begin
Но я бы организовал выполнение батника в назначенных заданиях с нужным интервалом повторения

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.


Последний раз редактировалось megaloman, 24-09-2011 в 18:00.

Это сообщение посчитали полезным следующие участники:

Отправлено: 17:52, 24-09-2011 | #4


Новый участник


Сообщения: 2
Благодарности: 0

Профиль | Отправить PM | Цитировать


ПОМОГИТЕ!!!
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

Отправлено: 19:32, 14-05-2012 | #5



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Перемещение файлов из нескольких папок в одну.

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - перемещение папок p0dnatas Скриптовые языки администрирования Windows 1 19-09-2011 19:56
CMD/BAT - [решено] Создание папок по дате получения файлов и перемещение в них файлов KamikadZZe Скриптовые языки администрирования Windows 1 01-09-2011 14:15
VBS/WSH/JS - Перемещение файлов и папок в разные папки... WalkManX Скриптовые языки администрирования Windows 0 07-08-2011 22:37
CMD/BAT - [решено] Перемещение нескольких файлов командой MOVE paulkorotoon Скриптовые языки администрирования Windows 6 26-08-2010 20:56
CMD/BAT - Перемещение нескольких папок из папки E2E2~1 ameds Скриптовые языки администрирования Windows 12 23-06-2010 17:27




 
Переход