2015-10-06 153 views
0

我試圖複製ChromeData子文件夾,其權限可能在用戶配置文件中,也可能不在用戶配置文件中。所以文件夾結構如下。使用具有權限的robocopy複製配置文件數據

-user1 
-chromeData 
-contacts 
-desktop 

-user2 
-chromeData 
-contacts 
-desktop 

目標應該是這樣的。

-user1 
-ChromeData 

-user2 
-ChromeData 

我的代碼如下。它會將chromeData文件夾中的內容複製到目標,但不會複製權限。請注意,我已將/ mir/secfix和/ copyall與robocopy結合使用。他們都沒有工作。我看到一篇文章說robocopy不會複製繼承權限。如果這是真的,我需要一個解決方法。

@echo off 
setlocal EnableDelayedExpansion 
set Source=F:\DFSroot\Redirected Content\ 
set Target=H:\Redirected ChromeData\ 
rem dir /s /ad /b "%Source%*.*" | find /i "\ChromeData" > C:\Temp\dir.txt 

for /F "tokens=*" %%a in (C:\Temp\dir.txt) do (
set T1=%%a 
call set T2=!T1:%Source%=%Target%! 
robocopy "%%a" "!T2!" /copyall 
pause 
) 

UPDATE

研究發現,允許被複制的文件夾chromedata但不是它的父文件夾。

+0

如果你解決這個問題,請告訴我們這樣。 – Paul

回答

0

使用以下命令與ACL的

robocopy "source address" "destination address" *.* /sec 

使用下面的命令來修復現有樹複製。

robocopy "source address" "destination address" *.* /secfix /sec 

Found this information on this blog

+0

這似乎是我的代碼是完全正確的。謝謝你的回答。但我現在有一個新的問題。它在問題中進行了更新。你能幫助我嗎? – Sp3LLingzz

+0

@ user1844635如果您將回顯置於robocopy前,會顯示什麼內容? – Paul

+0

@ user1844635在每個路徑的最後一級刪除'\\' – Paul