![]() |
Перемещение файлов и удаление дубликатов из source, если файл существует
Добрый день, уважаемые знатоки.
Преамбула: Есть определенное количество компьютеров, с этих компьютеров ежедневно нужно забирать генерируемые ежедневно файлы. Для этого был использован ftpes сервис, но так как ftp не может быть перенаправлен на сетевой диск, для этих целей был выделен отдельный винт, но и его сейчас оказывается мало. Теперь фабула: Как можно реализовать скрипт на PowerShell или BAT/CMD такой функционал: Необходимо из каталога PC, в котором большое количество подкаталогов и файлов перемещать каждые сутки в сетевую папку PC_Backup. Для этого изначально был использован простейший BAT-скрипт Код:
robocopy E:\PC\home Y:\PC_Backup /minage:5 /move /e Как можно перемещать файлы из каталога PC\home в PC_Backup\, и при этом удалять файлы из источника (PC\home), если он уже имеется в PC_Backup\ Спасибо огромное за помощь. |
dedajuno, попробуйте использовать параметр (не проверялось):
Цитата:
|
Iska, Можете немного пояснить, пожалуйста.
Данный ключ перемещает файлы, даже если они есть в папке назначения и вроде бы то, что нужно, но... при попытке протестировать командой Код:
robocopy E:\PC\test1 Y:\PC_Backup\test2 /move /e /is UPD: Прошу прощения, почитал и как бы иду в разрез со своим сабжем. Можно ли оставить корневую папку test1, перенеся все файлы и подкаталоги внутри в целевую папку? Или вообще по изощренному пути пойти и по окончанию операции, создать заново папку test1? :D |
dedajuno,
Код:
@Echo Off Цитата:
|
Цитата:
|
Iska, megaloman,
Всё, этот вопрос был решён добавлением маски /minage:5 В силу некоторых причин инфраструктура текущая у меня оказалось такой: Есть фтп сервер (на базе FileZilla Server) куда ежесуточно сливаются данные с 200 компов (jpeg, avi, webm, log) Эти данные необходимо хранить в одном месте, так как сетевой диск от NAS не может являться домашним каталогом, приходится сначала качать на сам сервер (E:\PC\) оттуда разбирать через robocopy в сетевой диск Y:\PC_Backup\. В случае, если указать просто Код:
robocopy E:\PC\test1 Y:\PC_Backup\test2 /move /e /is В общем решается куда проще))) просто добавить /minage:5 /is Спасибо, тему можно закрывать. |
Время: 22:33. |
Время: 22:33.
© OSzone.net 2001-