2014-11-21 2 views

ответ

2

Как это?

$path = 'c:\mypath' 
Get-ChildItem $path -Directory 
0

Get-childItem поддерживает подстановочные знаки. Таким образом, вы получите только папки на один уровень.

Get-ChildItem Mypath\* 

Итак, вы ищете что-то вроде этого:

$source = "Mypath" 
$dest = "$env:temp" 
$folders = Get-ChildItem "$source\*" -Directory 
$folders | ForEach-Object{ robocopy $_.fullname "$dest\$_" -E } 
0

Использование Robocopy с источником Е: вызывает ошибку.

Нравится? Это выглядит нормально ...

C:\>robocopy E: d:\t /LEV:1 /L 

------------------------------------------------------------------------------- 
    ROBOCOPY  ::  Robust File Copy for Windows 

------------------------------------------------------------------------------- 

    Started : 25 November 2014 
    Source = E:\ 
    Dest : d:\t\ 

    Files : *.* 

    Options : *.* /L /DCOPY:DA /COPY:DAT /LEV:1 /R:1000000 /W:30 

------------------------------------------------------------------------------ 

          13 E:\ 
      *EXTRA File    185  t.bat 
      New File     44  Track01.cda 
      New File     44  Track02.cda 
      New File     44  Track03.cda 
      New File     44  Track04.cda 
etc. 

Вы используете последнюю версию?

Ответ: используйте RoboCopy.

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