2012-02-24 2 views
13

원본과 동일한 하위 폴더가 포함 된 새 폴더에 하위 폴더가있는 폴더에서 재귀 복사 항목을 실행하면 해당 하위 폴더 이미 존재합니다. 위양성 (false negative)이 있으며 진정한 실패를보기가 더 어렵게 만들 수 있으므로 어떻게이를 억제 할 수 있습니까?Powershell 복사 항목 '폴더가 이미 있습니다.'오류가 발생했습니다.

예 :

Copy-Item "C:\realFolder\*" "C:\realFolder_new" -recurse 

Copy-Item : Item with specified name C:\realFolder_new\subFolder already exists. 

감사합니다.

- 짐

+0

-Force를 추가하면 문제가 해결됩니까? –

답변

14

당신은 일이 오류를 캡처 시도하고 당신이 그것에 대해 신경 여부를 결정할 수 :

copy-item "C:\realFolder\*" "C:\realFolder_new" -recurse -ErrorVariable capturedErrors -ErrorAction SilentlyContinue 
$capturedErrors | foreach-object { if ($_ -notmatch "already exists") { write-error $_ } } 
+0

감사합니다. 마침내 그것을 구현하고 오늘 시험 할 수있는 기회를 얻는다. :) – user1161625

7

다음을 사용하여 무시하는 행동을 오류 처리를 설정할 수 있습니다

Copy-Item "C:\realFolder\*" "C:\realFolder_new" -recurse -ErrorAction SilentlyContinue 

그러나이 또한 에 대해 알고 싶지 않은 오류가 표시되지 않습니다!

+0

예 ... sorta 만 도움이됩니다. 이미 존재하는 것이 Copy-Item cmdlet의 버그입니까? 출력이 낭비되는 것처럼 보입니다. 이미 이미 존재하고 있다면 그것을 만들려고하고 있습니다. 그러면 누가 신경을 씁니다. 적어도 -slientOnExistingDirs 또는 -verbose 스위치를 주시겠습니까? 도움을 주셔서 감사합니다.하지만 그 옵션에 대해 생각해 보겠습니다. – user1161625

5

당신이 기존 폴더를 덮어 쓰게됩니다 명령에 -Force를 추가 할 경우 당신이 볼 수 없습니다 오류.

Copy-Item "C:\realFolder\*" "C:\realFolder_new" -recurse -Force 
관련 문제