如何从 USMT 为大量 PC 调用 scanstate?

如何从 USMT 为大量 PC 调用 scanstate?

我已经自定义了所有 XML 文件,但我不知道如何编写脚本 scanstate 以在大量 (~50) 电脑上远程运行。我有一份电脑列表和相应的用户配置文件,我想以 CSV 格式迁移这些文件。

我想我可以在启动时运行一个 Powershell 脚本,该脚本调用在 CMD 下运行的 scanstate,并从列表中填写适当的参数。但是,我担心这会延迟登录或用户关闭 CMD 窗口,这不是我想要的。有什么建议吗?

答案1

尝试使用 Sysinternals 的 PSEXEC:
http://technet.microsoft.com/en-us/sysinternals/bb897553.aspx
我没有使用过 USMT。将 USMT 工具及其所需的文件放在您想要从中驱动该过程的机器上的 c:\temp\usmtSource 中。然后,您可以使用 powershell 读取 CSV,并使用 PSEXEC 在远程目标上进行调用。

import-csv usmt.csv | foreach {
    $target = $_.computer
    robocopy.exe c:\temp\usmtSource \\$target\c$\temp
    psexec.exe \\$target c:\temp\usmt.exe $_.arg1 $_.arg2 $_.arg3
}

这是基于具有 4 列名称的 CSV:computer、arg1、arg2、arg3
根据需要进行调整。

相关内容