Вопрос

Я пытаюсь запустить xcopy, который копирует файлы, исключая .obj и т.д.Что я вижу, так это то, что Microsoft.Практикует.ObjectBuilder.dll не копируется, когда мой excludes.txt файл содержит .obj в качестве расширения.Когда .obj удаляется, я подтверждаю, что Microsoft.Практикует.ObjectBuilder.dll скопирован правильно.Однако этого не происходит с другими библиотеками dll.

У кого-нибудь есть какие-нибудь идеи, почему это могло произойти?

Спасибо!

Леник

Это было полезно?

Решение

Я предполагаю, потому что подстрока .obj находится в имени Microsoft.Практика **.Obj **ectBuilder.dll и поскольку Windows не чувствительна к регистру, она исключит ее.

Другие советы

Да, xcopy настолько тупой.

Сделай это:

dir /b *.obj >excludes.txt
xcopy * /exclude:excludes.txt targetdir

хотя иногда с этим все равно будет возникать проблема.

Если бы у вас был файл под названием практики.обj, например, он не скопировал бы это, но он также не смог бы скопировать ваш Microsoft.Практики.ObjectBuilder.dll

Удобный трюк заключается в том, что если вы укажете /s в dir, вы получите рекурсию и полный путь, тогда, если вы полностью укажете исходный каталог в xcopy, исключения должны будут совпадать с самого начала:

dir /s /b *.obj >excludes.txt
xcopy c:\sourcedir\* /exclude:excludes.txt \targetdir

Теперь Microsoft.Practices.ObjectBuilder.dll Копирование не удастся, только если у вас случайно есть файл Microsoft.Practices.obj в том же каталоге.Понял это?

XCOPY - это устаревший во всяком случае, сейчас, так что я сомневаюсь, что все будет исправлено.Взгляните на ROBOCOPY - он встроен в Vista и поставляется в комплекте ресурсов для 2003 и XP.

Ответ - это то, что вы могли бы получить, набрав:

xcopy /?

А именно:

/ИСКЛЮЧИТЬ:файл1[+файл2][+файл3]...
Задает список файлов, содержащих строки.Каждая строка должна быть в отдельной строке в файлах.Когда любая из строк совпадает с любой частью абсолютного пути к файлу, подлежащему копированию, этот файл будет исключен из копирования.Например указание строки типа \obj\ или .obj исключит все файлы, находящиеся в каталоге obj, или все файлы с расширением .obj соответственно.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top