Pergunta

Eu estou tentando executar xcopy que copia arquivos excluindo obj, etc. O que estou vendo é que Microsoft.Practices.ObjectBuilder.dll não é copiada quando meu arquivo excludes.txt contém obj como uma extensão. Quando obj é removido, eu Microsoft.Practices.ObjectBuilder.dll é copiado corretamente. Isso não acontece com outras DLLs embora.

Alguém tem alguma idéia de por que isso iria acontecer?

Obrigado!

Lenik

Foi útil?

Solução

Eu acho que porque o substring obj é encontrado nos Microsoft.Practices nome **. Obj ** ectBuilder.dll e desde janelas não diferencia maiúsculas e minúsculas, ele irá excluí-lo.

Outras dicas

Sim, xcopy é burro assim.

Faça o seguinte:

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

Embora este ainda terá o problema às vezes.

Se você tivesse um arquivo chamado practices.ob j, por exemplo, não seria copiar isso, mas ele também não seria suficiente para copiar o seu Microsoft. Practices.Obj ectBuilder.dll

Um truque útil é se você especificar / s no dir, você começa recursão e o caminho completo, em seguida, se você especificar o diretório de origem totalmente na xcopy, os exclui terá que corresponder a partir do começando:

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

Agora Microsoft.Practices.ObjectBuilder.dll só iria deixar de cópia, se acontecer de você ter um arquivo Microsoft.Practices.obj no mesmo diretório. Obtê-lo?

XCOPY é deprecated agora de qualquer maneira, por isso duvido que as coisas vão ficar fixo. Dê uma olhada em ROBOCOPY - que está integrado no Vista, e vem no kit de recursos para 2003 e XP .

A resposta é o que você poderia obter digitando:

xcopy /?

A saber:

/ EXCLUDE: arquivo1 [+ arquivo2] [+ file3] ...
Especifica uma lista de arquivos que contêm cadeias. cada corda deve estar em uma linha separada nos arquivos. Quando qualquer um dos cordas corresponder a qualquer parte do caminho absoluto do arquivo a ser copiado, esse arquivo será excluído de ser copiado. Para exemplo, especificar uma string como \ obj \ ou .obj excluirá todos os arquivos sob o obj diretório ou todos os arquivos com o extensão .obj, respectivamente.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top