我要做的是将用户配置文件从本地工作站备份到我们的备份服务器,并在完成后向我发送电子邮件。我目前有两个不同的脚本。如果我们可以在一个脚本中做到这一点会很好。如果我需要两个脚本,那不会有问题。
第一个脚本是备份,它一直运行正常。
robocopy C:\Users\TravisWhiteman.ArchwaySys\AppData \\10.1.10.6\WorkstationBackup\Test\AppData /mir /W:3 /R:1 /log:CopylogAppData.txt
robocopy C:\Users\TravisWhiteman.ArchwaySys\Desktop \\10.1.10.6\WorkstationBackup\Test\Desktop /mir /W:3 /R:1 /log:CopylogDesktop.txt
robocopy C:\Users\TravisWhiteman.ArchwaySys\Documents \\10.1.10.6\WorkstationBackup\Test\Documents /mir /W:3 /R:1 /log:CopylogDocuments.txt
robocopy C:\Users\TravisWhiteman.ArchwaySys\Downloads \\10.1.10.6\WorkstationBackup\Test\Downloads /mir /W:3 /R:1 /log:CopylogDownloads.txt
现在我想添加一些功能,我不知道如何。我想将其从手动设置用户配置文件目录更改为系统自动找出用户是谁。我认为它类似于%USERNAME%。目标是让用户输出系统图,这样我就不必为每个工作站更改C:\ Users \ TravisWhiteman.ArchwaySys。我们所有的工作站都会在计划任务备份前10分钟自动打开,以防用户关闭计算机。
答案 0 :(得分:1)
基本上,您需要的是当前登录用户的配置文件路径,以获取远程计算机列表。
每台计算机的步骤:
$userSID
(方法描述为here)HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\$userSID
,并读取值ProfileImagePath
,它在此计算机上保存此用户的本地配置文件路径(example远程注册表访问权限) C:\Users\...
- > \\computerName\c$\Users
)robocopy
可以简单地选择\\computer\c$\Users\$userLogin
,但正如OP的示例所示,Windows有时会将您的域名附加到您本地个人资料文件夹名称中的用户名,而且不可预测时尚。
(Remote Registry
服务必须在远程计算机上运行)
如果工作站已关闭然后唤醒,您我将定位C:\Users
中最后修改过的文件夹。