首先,我不能使用组策略,因为我们的团队不管理它。该公司是一家大型 FTSE 公司,拥有一支团队,负责您能想到的 IT 的各个方面。
我们的团队需要一种通过批处理文件或利用 Windows Installer 和 .msi 文件的脚本来远程安装程序的方法。
到目前为止,我已经设法使用 psexec 安装 Java(见下文)
psexec \\pcname -u *username* -p *password* -i
msiexec.exe /a "msilocation\install.msi"
这没有任何问题。但是我想要一些比这更自动化的东西。
但是,我希望能够从我的机器运行脚本或批处理文件,以便在列出的所有远程工作站上安装 msi。我非常确定您可以在批处理文件中列出工作站,但我可能错了。
说实话,我并不太在意是否需要在脚本或批处理文件中进行修复。我只是不能使用组策略等。
答案1
创建一个名为 COMPUTERS.TXT 的文本文件,并将所有计算机名称放入其中,每行一个。
然后,创建一个.CMD
包含以下代码的文件:
编辑
我%%i\
在前面添加了*username
指定远程机器管理员用户。
编辑2
我修复了代码中的拼写错误...psexec \\%%1
改为psexec \\%%i
。
@ECHO OFF
FOR /F "tokens=1" %%i IN (COMPUTERS.TXT) DO (
psexec \\%%i -u %%i\*username* -p *password* -i msiexec.exe /a "msilocation\install.msi"
)
答案2
我创建了一个 VB 应用程序,我认为它符合您的要求。该应用程序名为 Script Zombie。基本上,它将主机名传递给要执行的脚本。您可以控制同时生成的任务数,因此您可以同时针对多达 25 个系统运行脚本。
您可以在这里获取免费应用程序:脚本僵尸 v0.85
答案3
如果您拥有远程设备的管理员权限,那么 psexec 没有使用文本文件进行输入的命令行选项!
答案4
由于您可以使用启动脚本,因此您可以编写脚本,以便每台机器从该端启动它,而不是尝试从远程将其推出。如有必要,脚本可以首先检查共享资源上的文件,该文件列出了应涉及的机器,如果其名称不在列表中,则退出。