2011-09-07 4 views
11

Czy istnieje sposób replikowania funkcjonalności xcopy przy użyciu powłoki powershell?Implementacja PowerShell xcopy

Pomyślałem, że było to łatwe pytanie, dopóki nie spróbowałem niektórych cmdletów.

Wyobraźmy Mam struktury folderów, takich jak:

src

| -a

| -b

Nie jesteś plików w każdym folderze oczywiście. Muszę skopiować zawartość Src do jakiegoś folderu Dst.

Z xcopy byłoby tak:

xcopy src dst\ /e /y 

PS analogowe byłoby coś takiego:

copy-item src dst\ -force -recurse -verbose 

Działa świetnie ... za pierwszym razem. Za drugim razem tworzy podfolder dst \ src i umieszcza tam pliki!

Nie mogę znaleźć żadnego prostego rozwiązania. Czy możesz?

p.s. Wiem, że mogę używać xcopy w PS.

Odpowiedz

22
copy-item c:\\src\\* c:\\dst -force -recurse -verbose 
+1

problem z drugiego polecenia jest to, że spłaszcza strukturze katalogu. – Kostassoid

+4

copy-item c: \ src \ * c: \ dst -force -recurse -verbose działa bez spłaszczeń! –

+1

wyjaśnienie. po raz pierwszy spłaszcza strukturę. za drugim razem tworzy ważne foldery drugiego poziomu i kopiuje tam pliki. więc działa dobrze, gdy struktura folderów dest jest już utworzona. – Kostassoid