我想给Normal.dotm
从所有用户的C:\Users\%username%\AppData\Roaming\Microsoft\Templates
到C:\Temp\%username%
复制。我重新安装作为SCCM任务序列的一部分之前,我特别想要备份的数据。有什么想法吗?
我曾尝试使用ROBOCOPY一些不同的脚本和它要么陷在一个循环或只复制一个目录。
robocopy C:\Users\%username%\AppData\Roaming\Microsoft\Templates\. C:\Temp\%username% /s /create
只复制目录CMD运行为:
robocopy C:\Users\ C:\Temp\ /s /xjd normal.dotm
创建循环,并创建C:\Users\Application\Data\Application Data\
永远
运行该帐户将需要以获得大家的目录管理员。当你相信正在创建正确的命令,从他们身上取下小写echo
。
@ECHO OFF
FOR /F "delims=" %%f IN ('DIR /S /B "C:\Users\Normal.dotm"') DO (
SET "TDIR=C:\temp%%~pf"
IF NOT EXIST "%TDIR%" (echo MKDIR "%TDIR%")
echo COPY "%%~f" "%TDIR%"
)
您可以使用不同的方式:
@echo off
setlocal EnableDelayedExpansion
for /R "C:\Users\" %%A IN (Normal.dotm) do (
set "fpath=%%~fA"
if not "!fpath:\AppData\Roaming\Microsoft\Templates\=!" == "!fpath!" (
rem Find username:
for /F "tokens=3 delims=\" %%B IN ("%%A") do (
set "current_username=%%B"
)
rem Copy files:
copy "!fpath!" "C:\Temp\!current_username!\"
)
)
那当然,需要管理员权限,你不能没有管理员权限进入其他用户的目录。在你的文件单击鼠标右键,选择“以管理员身份运行”。