3

我想生成一个批处理文件,它将从用户的配置文件中复制所有 *.doc 和 *.xls 文件类型。然后,我会将批处理文件设置为在所有用户注销后通过计划任务自动运行。这是我所拥有的:

for %%x in (doc xls) do xcopy c:\Users\user1\*.%%x "\\server\i$\User Backups\user1\%computername%\" /c /i /y /s /d

这很好用,但是,我需要在批处理文件中为我们组织中的每个用户(user1、user2 等)生成一个行项目,以便我点击所有配置文件。雇用新用户时,需要使用他们的个人资料信息更新文件。理想情况下,我想要一些更自动化的东西,类似于:

for %%x in (doc xls) do xcopy %userprofile%\*.%%x "\\server\i$\User Backups\%username%\%computername%" /c /i /y /s /d 

缺点是通过使用 %userprofile% 代替 'user1' 输入,它只针对当前登录的用户运行。有没有我可以合并的另一个选项,它不关心当前登录的用户,而只是针对机器上的所有用户配置文件运行?

4

1 回答 1

1

您可以使用reg query从注册表中获取用户配置文件列表,但您只关心在 下具有文件夹的用户C:\Users,因此只需遍历这些:

for /d %%u in (C:\Users\*) do for %%x in (doc xls) do xcopy C:\Users\%%~nu\*.%%x "\\server\i$\User Backups\%%~nu\%computername%\" /c /i /y /s /d
于 2012-05-22T23:38:33.753 回答