2016-11-30 36 views
0

我正在尝试编写一个将自动安装我们的远程应用程序应用程序的脚本。这是我到目前为止:在批处理中自动化应用程序安装

REM Install Remote Icons 
@Echo On 
pushd "\\Servername.com\it\RDP\Installers\" 
start msiexec /i "\\Servername.com\it\RDP\Installers\ExercisePro.msi" /qn 
start msiexec /i "\\Servername.com\it\RDP\Installers\Excel.msi" /qn 
start msiexec /i "\\Servername.com\it\RDP\Installers\Word.msi" /qn 
start msiexec /i "\\Servername.com\it\RDP\Installers\Outlook.msi" /qn 
start msiexec /i "\\Servername.com\it\RDP\Installers\Allscripts EHR.msi" /qn 
start msiexec /i "\\Servername.com\it\RDP\Installers\Allscripts PM.msi" /qn 
start msiexec /i "\\Servername.com\it\RDP\Installers\MModal Allscripts EHR.msi" /qn 
popd 

mkdir C:\Users\%USERNAME%\Icons 

copy C:\Users\%USERNAME%\%APPDATA%\Local\Microsoft\Installer C:\Icons 

pushd "\\Servername.com\M Modal\Fluency.Direct.9.1.65.7.6.4.v7\fd.client\install_silent.bat" 
popd 

copy \\Servername.com\Private IT\PC_Shortcuts \\%COMPUTERNAME%\%USERNAME%\Public\Desktop 

pause 

到目前为止脚本不按我的意图工作。我希望它安装应用程序,然后我希望它创建一个名为C:\ Icons的目录,并将应用程序数据复制到该文件夹​​,以便我可以删除它所做的应用程序数据条目,并且这些条目将用户配置文件更长时间登录。另外,我还有一个服务器上的文件夹,我想将其复制到具有我们所用的所有Internet快捷方式的本地桌面。这也不能正常工作:(

+0

如果脚本是在Powershell中,还是需要在批处理文件中,您好吗? – Random206

+0

有许多免费的远程安装软件解决方案将更加全面,例如PDQ Deploy,这将使这更容易。你是否期望这在用户上下文中运行?你如何运行?你真的不能解释什么不起作用 – Matt

回答

0

您可以使用PowerShell远程处理这个任务。请invoke-command-ComputerName参数远程操作。使用PowerShell版本5 Copy-Item支持FromSession ToSession参数远程复制文件。你可以通过Start-Process运行MSIEXEC 。

1

这应该为你工作。

而且你真的需要所有的pushd和popd的,如果你提供你所复制。如果您要执行一个文件源代码完整位置,并通过调用它它是完整的通用命名约定(即C:\ Folder \ Test.txt),那么你不需要将当前目录更改为C:\ Folder,就可以在计算机文件系统中的任何位置运行该文件,因为您正在提供完整的文件位置。

如果您想通过仅提供文件名或文件的部分地址来运行文件,则需要更改为文件所在的目录,或者将位置提供给导演,从您的位置位于。 (即,如果您位于C:\ Folder1并且文件驻留在C:\ Folder1 \ Folder2 \ Folder3 \ File.txt中,则需要使用以下地址:\ Folder2 \ Folder3 \ File.txt,因为您已经位于C:\ Folder1和。\充当您所在的当前目录的占位符\变量)。

REM Install Remote Icons 
@Echo On 

msiexec /i "\\Servername.com\it\RDP\Installers\ExercisePro.msi" /qn /norestart 
msiexec /i "\\Servername.com\it\RDP\Installers\Excel.msi" /qn /norestart 
msiexec /i "\\Servername.com\it\RDP\Installers\Word.msi" /qn /norestart 
msiexec /i "\\Servername.com\it\RDP\Installers\Outlook.msi" /qn /norestart 
msiexec /i "\\Servername.com\it\RDP\Installers\Allscripts EHR.msi" /qn /norestart 
msiexec /i "\\Servername.com\it\RDP\Installers\Allscripts PM.msi" /qn /norestart 
msiexec /i "\\Servername.com\it\RDP\Installers\MModal Allscripts EHR.msi" /qn /norestart 

Call "\\Servername.com\M Modal\Fluency.Direct.9.1.65.7.6.4.v7\fd.client\install_silent.bat" 

mkdir C:\Users\%USERNAME%\Icons 

copy C:\Users\%USERNAME%\%APPDATA%\Local\Microsoft\Installer\*.* C:\Users\%USERNAME%\Icons /Y 

copy \\Servername.com\Private IT\PC_Shortcuts\*.* \\%COMPUTERNAME%\%USERNAME%\Public\Desktop /Y 

pause 

注:我在/ norestart更新日志文件中添加,以保证您的设备不经过任何的安装,那么这又将杀安装脚本的重启。

+0

谢谢!但我不认为它工作正常。它不调用M * Modal文件夹内的批处理文件,也不安装应用程序。就拷贝命令而言,我的间距是否错误? – Andrew11

+0

嗨,对不起,我遗漏了批处理文件,现在我已经添加了。我注意到你在C:\用户\%USERNAME%\图标文件夹中创建图标后,将图标复制到C:\图标,所以我修改了它,但是如果它不在你想要的位置他们去。对于msi没有安装,你能告诉我是否有错误,或者屏幕上是否有任何东西弹出。请记住,它们最后会有/ q开关,因此它们将以无提示方式进行安装。如果你只是想要一个加载窗口而没有别的,你可以将/ qn改为/ passive,然后你就可以看到发生了什么。 – Random206

+0

感谢您在这里帮助我。大部分时间窗口消失,它会开始,然后它会消失,你什么都看不到。我想我需要调用M * Modal安装的批处理文件,但不确定。开始似乎没有正常工作。我将改变为/被动和测试!谢谢! – Andrew11