2016-04-11 13 views
3

çalıştırırken, özyinelemeli Kopya Öğe çağrısıKopya Öğe kopya klasör benim iç sistemde tekrarlayan günlükleri toplama sırasında ikinci kez

Say garip davranış bulduğumuz i C var: \ bazı dosya ve alt ile Kaynak dosyalar ile. Bunu yinelemeli olarak C: \ Target'a kopyalamak istiyorum. İlk kez tüm kaynak tekrar tekrar C: \ Target

'a kopyalanır. Sorun, "C: \ Source" ı "C: \ Target" a ikinci kez kopyalamaya çalıştığımda ortaya çıkar. Bu durumda "C: \ Kaynak" olacak kopyalanacak "C: \ Hedef \ Source" Örneğin

:

cls 
if(Test-Path "C:\Target") 
{ 
    Remove-Item "C:\Target" 
} 

Copy-Item "C:\Source" "C:\Target" -Force -Recurse | Out-Null 
DIR "C:\Target" 
Write-Host "OK" 
Write-Host " " 
Write-Host " " 

Copy-Item "C:\Source" "C:\Target" -Force -Recurse | Out-Null 
DIR "C:\Target" 
Write-Host "Not OK" 

Komut çıkışı:

Directory: C:\Target 


Mode    LastWriteTime  Length Name               
----    -------------  ------ ----               
d----   4/11/2016 3:45 PM   SampleSourceFolderLevel1          
-a---   4/11/2016 3:35 PM   0 SampleFileLevel0.txt           
OK 


d----   4/11/2016 3:45 PM   SampleSourceFolderLevel1          
d----   4/11/2016 3:45 PM   Source               
-a---   4/11/2016 3:35 PM   0 SampleFileLevel0.txt           
Not OK 

herhangi bir fikir nasıl Kopyala öğesini

ROBOCOPY $sourceLog $targetLog /E | Out-Null 

gibi çalışmasını sağlayabilir miyim? Eğer c:\Source içeriğini kopyalamak istediğiniz gibi önceden

Script output

cevap

2

yılında

teşekkürler görünüyor. Sadece \* eklemeniz gerekir: Hedef klasörü ve şimdi cmdlet'ini kopya klasör C:\Target için C:\Source silmek çünkü

Copy-Item -Path "C:\Source\*" -Destination "C:\Target" -Force -Recurse | Out-Null 

Bu ilk çalıştırma için çalışır. C:\Target varsa, cmdlet kaynağı kaynağını Hedef klasörüne kopyalar.

+0

Ne yazık ki, bu yalnızca ilk seviye dosyaları ** C: \ Source ** öğelerini kopyalar. Eğer bir alt klasör ** C: \ Source \ Subfolder ** varsa, –

+0

kopyalanmayacaksa tekrar deneyemezsiniz, örneğimi güncelledim –

+0

Teşekkür, @jisaak. Bunun ikinci kez çalıştığını görüyorum ama yine de ilk olarak iyi çalışmıyor :). Öğeyi kopyalamak için önce hedef klasör oluşturmadan bunun üstesinden nasıl geleceğinizi biliyor musunuz? [link] (http://i.imgur.com/BXgA75j.png) –