MSBUILD Скопируйте несколько файлов из исходных путей в разные пути назначения - PullRequest
0 голосов
/ 13 декабря 2018

Мне нужно скопировать файлы из разных исходных путей в разные целевые пути.

Пример источников:

  • xyz \ x.txt
  • pqr \ p.img

Соответствующие направления:

  • mno \ x1.txt
  • qst \ p_sth.img

Я пытаюсь использовать пакетную копию следующим образом:

Создан ItemGroup, указывающий исходный файл и файлы назначения: Команда запуска пакетного копирования:

<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"
         DefaultTargets="start">

<ItemGroup>
        <src Include="xyz\x.txt">
            <OutputFile>"mno\x1.txt"</OutputFile>
        </src>
        <src Include="pqr\p.img" >
            <OutputFile>"qst\p_sth.img"</OutputFile>
        </src>
</ItemGroup>

 <Target Name="start">


    <Message Importance="high" Text="Bulk Copy"/>
    <Copy SourceFiles="%(src.FullPath)" DestinationFiles="%(src.OutputFile)"/>
  </Target>
  </Project>

Я получаю сообщение об ошибке "Недопустимый символ", указывающее на строку № 17, показанную как:

MSBuild Error Могу ли я достичьэто с помощью команды копирования?Также допустима команда RoboCopy.

[Но требуется требование полного пути к источнику с именем файла и полного пути назначения с именем файла]

Каков наилучший подходсправиться с этим?

1 Ответ

0 голосов
/ 16 декабря 2018

Решение состоит в том, чтобы просто удалить ненужные кавычки из путей к выходным файлам (как предложено @stjin):

<ItemGroup>
        <src Include="xyz\x.txt">
            <OutputFile>mno\x1.txt</OutputFile>
        </src>
        <src Include="pqr\p.img" >
            <OutputFile>qst\p_sth.img</OutputFile>
        </src>
</ItemGroup>
...