Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] Одну папку надо скопировать во много других (http://forum.oszone.net/showthread.php?t=154860)

Itexz 28-10-2009 20:43 1255089

Одну папку надо скопировать во много других
 
Всем привет! Есть папка Example (в ней есть другие файлы и папки). Надо все из папки Example скопировать в другие папки находящиеся в папке My_Works.

То есть получается в папке My_Works находятся Папки Work1,Work2 в которых есть файлы которые я сам пишу, и библиотеки, которые каждые день обновляются не мной. Идея в том, чтоб библиотеки сами заменялись во всех папках My_works/work1; My_works/work2 и т.д.

Всем заранее спасибо

avolkov2009 28-10-2009 21:00 1255108

Это прекрасно умеет делать xcopy

Itexz 28-10-2009 21:25 1255121

а можно поподробнее? Как в xcopy задать глубину в одну папку, и как задать перебирание папок

amel27 29-10-2009 02:03 1255270

Цитата:

Цитата Itexz
можно поподробнее?»

Код:

@Echo Off

Set SRC=C:\Example
Set DST=D:\My_Works

For /R "%DST%" %%i In (.) Do XCOPY /U/F/H/Y %SRC%\* %%i\


Itexz 02-11-2009 23:15 1259823

к сожалению так не получается, копируются только файлы, а папки внутри C:\Example никуда не копируются(

amel27 03-11-2009 10:57 1260190

Цитата:

Цитата Itexz
папки внутри C:\Example никуда не копируются »

по ходу предложенный выше скрипт решает немного другую задачу - обновляет файлы из исходной папки по всем вложенным подкаталогам целевой папки, но в исходной папке все файлы должны лежать на одном уровне (без подкаталогов)...

тогда такой вариант:
Код:

@Echo Off

Set SRC=C:\Example
Set DST=D:\My_Works

For /F "Delims=" %%i In ('DIR /AD/B "%DST%\*"') Do (
XCOPY /D/S/F/H/Y "%SRC%\*" "%DST%\%%i\" )

P.S. Обратите внимание на ключи "/D" и "/U", т.к. возможны варианты сочетаний - копировать только обновленные файлы, только существующие в папке назначения, либо только обновленные и существующие.


Время: 09:33.

Время: 09:33.
© OSzone.net 2001-