Görev kopyalama
Dosyaları dosya sistemi yeni bir konuma kopyalar.
Parametreler
Aşağıdaki tabloda parametrelerini açıklar Copy görevi.
Parametre |
Description |
---|---|
CopiedFiles |
İsteğe bağlı ITaskItem[] çıkış parametresi. Başarıyla kopyalanan öğeleri içerir. |
DestinationFiles |
İsteğe bağlı ITaskItem[] çıkış parametresi. Kaynak dosyalar Kopyalanacak dosyaların listesini belirtir. Bu listede belirtilen listesi ile bire bir eşleme olması beklenen SourceFiles parametresi. Diğer bir deyişle, belirtilen ilk dosya SourceFiles belirtilen ilk konuma kopyalanır DestinationFiles, ve benzeri. |
DestinationFolder |
İsteğe bağlı ITaskItem parametresi. Dosyaları kopyalamak istediğiniz dizini belirtir. Bu dizin bir dosya olmalıdır. Dizin yoksa, otomatik olarak oluşturulur. |
OverwriteReadOnlyFiles |
İsteğe bağlı Boolean parametresi. Bile okuma yalnızca dosyaları olarak işaretlenmiş dosyaların üzerine yaz |
Retries |
İsteğe bağlı Int32 parametresi. Kopyalamak, önceki tüm girişimler başarısız olmuş, denemek için kaç kez belirtir. Varsayılan olarak sıfır. Not: deneme kullanımı işlemlerinizle eşitleme sorunun maskeleyebilirsiniz. |
RetryDelayMilliseconds |
İsteğe bağlı Int32 parametresi. Gerekli tüm yeniden denemeler arasındaki gecikme belirtir. Varsayılan olarak CopyTask yapıcısına iletilen RetryDelayMillisecondsDefault bağımsız değişkeni. |
SkipUnchangedFiles |
İsteğe bağlı Boolean parametresi. true, Kaynak ve hedef değiştirilmemiş dosyaları kopyalama atlar. Copy Görev, sahip oldukları aynı boyutta ve aynı son değişiklik saati değişmeden dosya dikkate alır.
Not
Bu parametreyi ayarlamak, true, yalnızca görev, çalıştığı için bağımlılık çözümlemesi içeren hedef kullanmamalısınız last-modified kez kaynak dosyalarının last-modified yeni hedef dosya sayısı.
|
SourceFiles |
Gerekli ITaskItem[] parametresi. Kopyalanacak dosyaları belirtir. |
UseHardlinksIfPossible |
İsteğe bağlı Boolean parametresi. true, Dosyaları kopyalamak yerine kopyalanan dosyalar için sabit bir bağlantı oluşturur. |
Notlar
Ya da DestinationFolder veya DestinationFiles parametresi belirtilen, ancak ikisi de olmalıdır. Her ikisi de belirtilirse, görev başarısız olur ve bir hata günlüğe kaydedilir.
Yukarıda listelenen parametreleri ek olarak bu görevi parametrelerinden devralan TaskExtension kendisinde sınıfı miras alır Task sınıfı. Bu ek parametreler ve açıklamalarının listesi için bkz: TaskExtension temel sınıf.
Örnek
Aşağıdaki örnek öğeleri kopyalar MySourceFiles klasörü c:\MyProject\Destination koleksiyonuna öğe.
<Project xmlns="https://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<MySourceFiles Include="a.cs;b.cs;c.cs"/>
</ItemGroup>
<Target Name="CopyFiles">
<Copy
SourceFiles="@(MySourceFiles)"
DestinationFolder="c:\MyProject\Destination"
/>
</Target>
</Project>
Aşağıdaki örnekte, yinelenen kopya yapmak gösterilmiştir. Bu proje tüm dosyaları art arda c:\MySourceTree c:\MyDestinationTree dizin yapısını koruyarak kopyalar.
<Project xmlns="https://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<MySourceFiles Include="c:\MySourceTree\**\*.*"/>
</ItemGroup>
<Target Name="CopyFiles">
<Copy
SourceFiles="@(MySourceFiles)"
DestinationFiles="@(MySourceFiles->'c:\MyDestinationTree\%(RecursiveDir)%(Filename)%(Extension)')"
/>
</Target>
</Project>