Я пытаюсь использовать Robocopy для создания клиентских сборок программного обеспечения, копируя все необходимые файлы из нашего основного хранилища. У нас есть несколько клиентов, каждый из которых нуждается в собственной сборке программного обеспечения.
У меня есть список требований для сборки каждого клиента. Я думаю сначала скопировать основной материал (двоичные файлы и тому подобное, используемый всеми клиентами), а затем скопировать специфический материал для клиента в зависимости от того, для кого я делаю сборку, используя эти списки. У нас что-то подобное уже работает с xcopy.
Очевидно, есть куча вещей, которые я хочу исключить из клиентской сборки, такие как исходные файлы, файлы журналов и, очевидно, все специфичные для клиента вещи. Я подумал, что при умном использовании ключей /xf
и /xd
я смогу заставить его работать.
После получения всей необходимой информации в Lua
создается следующая команда:
robocopy "Z:\path\to\source" "../dest" /e /xf *.cpp *.h *.hpp [[. . .]] *.cxx /xd Data/Testing Data/Some/Client/Data Data/Other/Client/Data [[ . . .]] Data/More/Directories
При запуске я получаю следующий вывод:
-------------------------------------------------------------------------------
ROBOCOPY :: Robust File Copy for Windows
-------------------------------------------------------------------------------
Started : Tuesday, August 1, 2017 11:15:59 AM
Source : Z:\path\to\source
Dest : ../dest
Files : *.*
Exc Files : *.cpp
*.h
*.hpp
[[. . .]]
*.cxx
Exc Dirs : Data/Testing
Data/Some/Client/Data
Data/Other/Client/Data
[[ . . .]]
Data/More/Directories
Options : *.* /S /E /DCOPY:DA /COPY:DAT /R:1000000 /W:30
------------------------------------------------------------------------------
Вывод говорит мне, что моя команда отформатирована правильно, и что Robocopy понимает, что я прошу это сделать.
Проблема в том, что он игнорирует список Exc dirs
и просто копирует все. Я не хочу исключать весь каталог Data
, но только биты внутри него, которые имеют отношение к делу.
Если я использую обратную косую черту (\
), то вывод Exc dirs
печатается как Data\\testing
. Может ли это быть моей проблемой?