2017-08-04 45 views
-1

我搜索了四周,似乎無法找到我自己的解決方案,所以我尋求幫助!從目錄列表中,將所有子文件夾複製到每個目錄都有自己的文件夾的新位置

我有一個約100個文件位置/目錄的列表。它們位於網絡上,我需要抓住它們並將它們存儲在本地。我有一些VBA的經驗,所以我打算嘗試並使用它(也許把目錄放在電子表格中,然後運行一個宏...)

當我在本地存儲它們時,我需要保留他們來自的目錄。

任何幫助將被大力讚賞,自動化這變得越來越必要,因爲我正在發送更多的目錄,並且手動過程將無法順利擴展。

任何幫助,指向我的方向或提供建議是非常讚賞。

乾杯

+0

你看過[複製項目](https://docs.microsoft.com/en-us/powershell/module/Microsoft.PowerShell.Management/Copy-Item?view=powershell-5.1)cmdlet嗎? – Sambardo

回答

2

您可以使用PowerShell中的Copy-Item cmdlet與-recurse-container開關組合,以複製和保存文件夾結構!備份完整的網絡文件夾以及所有子文件夾太棒了!

這是我的源代碼目錄。

C:\temp\stack>tree /F 
Folder PATH listing 
Volume serial number is 0000000B 9215:D0CB 
C:. 
├───Dest 
└───Source 
    ├───1 
    │  Archive.rar 
    │  File01.bmp 
    │ 
    ├───2 
    │  Archive.rar 
    │  File01.bmp 
    │ 
    ├───3 
    │  Archive.rar 
    │  File01.bmp 
    │ 
    └───4 
      3.txt 
      Archive.rar 
      File01.bmp 
      Ham.txt 

正如你所看到的,我已經在每個子文件夾和子文件的一些文件和文件夾Source。有了這個簡單的PowerShell命令,我可以輕鬆地將整個結構移動到Dest

copy-item -Path c:\temp\stack\source -Destination C:\temp\stack\Dest -Container -Recurse 

現在我已將整個結構維護在Dest文件夾中。

C:\temp\stack>tree /F 
Folder PATH listing 
Volume serial number is 000000DE 9215:D0CB 
C:. 
├───Dest 
│ ├───1 
│ │  Archive.rar 
│ │  File01.bmp 
│ │ 
│ ├───2 
│ │  Archive.rar 
│ │  File01.bmp 
│ │ 
│ ├───3 
│ │  Archive.rar 
│ │  File01.bmp 
│ │ 
│ └───4 
│   3.txt 
│   Archive.rar 
│   File01.bmp 
│   Ham.txt 
0

複製項目將如上所述工作。 robocopy也是爲了這個確切的目的而構建的,並且可以在cmd或Powershell中運行。使用信息運行robocopy /?

你可能想是這樣的:

robocopy "Y:\Network\Source\Location" "C:\Local\Machine\Destination\Location" /E 

/E均值複製的目錄及其所有子目錄。

相關問題