2009-12-15 4 views
57

Я пытаюсь взять содержимое папки и скопировать ее в другую с помощью PowerShell 1.0. Довольно простой материал, и все работает отлично, используя Copy-Item $from $to -recurse, если я копирую из локальной папки в локальную папку. Однако, если переменная $to является UNC-контуром, представляется копией каталога $from, а не только его содержимого.Копирование экземпляра каталога, а также содержимого по пути UNC

например.

$from = "c:\temp\rhysc\" 
$to = "\\OtherMachineName\ShareFolder\" 
Copy-Item $from $to -recurse 

... заканчивается до создания папки \\OtherMachineName\ShareFolder\rhysc вместо того, чтобы просто скопировать над содержимым папки.

Я хочу, чтобы сохранить структуру каталога $from, что я копирую над тем, моей основной попыткой трубопроводов не работала (все получили сбрасывали в корне папки $to)

Get-ChildItem $from -recurse | Copy-Item -destination $to 
+0

вы уверены, что локальная копия не скопировать каталог? Это поведение, которое я вижу, если вы не делаете то, что предлагает Дэвид. –

+0

yep, 100% уверен, мои тесты полагались на него. Он только нарушил измененное поведение, когда я изменил путь к UNC. – RhysC

+0

См. Также [Как скопировать каталог, переписывая его содержимое, если оно существует, используя Powershell?] (Http://superuser.com/q/544520) –

ответ

73

Try:

$from = "c:\temp\rhysc\*"

+6

Я чувствую себя глупо, и я люблю тебя. ура! – RhysC

+2

Человек, который взял меня _hours_ - спасибо! –

+7

powershell 3 Мне пришлось опустить звездочку и использовать -recurse. – AnneTheAgile

Смежные вопросы