batch-file - 使用 msiexec 静默安装 MSI 时出现问题,可能是语法问题?
问题描述
本质上,我想静默安装一个 msi 文件,并且我已经使用以下行让它工作:
msiexec /i C:\Users\%username%\Downloads\mysqlODBC.msi /passive
我想做的一个补充是在该行的用户名部分添加双引号,以确保正确读取任何可能包含空格的用户名。----> "%用户名%"
问题是添加此文件时无法安装 msi 文件。在编写带有目录的批处理脚本时,我一直使用它。知道如何解决这个问题以与 msiexec 一起工作吗?
链接到我试图悄悄安装的 MSI 文件:
解决方案
网络安装点?: 我不太清楚你想要达到什么目的。您想在多台机器上自动安装此 MSI 吗?如果是这样,您应该创建一个可通过 UNC 路径访问的网络安装点并运行管理映像以提取所有文件并创建一个可用于所有计算机的网络安装点:
msiexec.exe /i "\\Server\Share\Setup.msi" /QN /L*V "C:\Temp\msilog.log"
如果你有那个灌输点,那么真的没有理由为每个用户创建一个文件夹。为什么要重复安装文件?您肯定不希望每个用户都下载安装程序吗?您想下载一次,检查恶意软件,然后一劳永逸地依赖您下载的内容吗?
无论如何,如果你坚持:
msiexec.exe /i "\\Server\Share\%username%\Setup.msi" /QN /L*V "C:\Temp\msilog.log"
快速参数说明:
/i = run install sequence
/QN = run completely silently
/L*V "C:\Temp\msilog.log"= verbose logging at specified path
msiexec.exemsiexec.exe
:有关命令行的更多详细信息,请参阅此答案: MSIEXEC what is the difference between qn and quiet。它有两种不同的风格——两组不同的开关:旧式和一些更新的、“更友好”的版本。我只使用旧式开关。有一个工具可以用来生成命令行。
一些链接:
推荐阅读
- elasticsearch - 弹性搜索 - elasticsearch.yml 中未配置节点属性 如果没有节点属性,您将无法控制分片分配
- drupal - Drupal Group 模块,以编程方式将用户添加到具有特定角色的组
- vue.js - 在 vue Bootstrap 数据表中添加事件
- php - 将相同的数组值相加到单个数组中
- javascript - NestJS如何在上传图片之前验证正文?
- javascript - 如何使用来自 API 响应的 JSON 呈现材料表?
- video - 视频是否预乘?
- c# - 将一些复选框绑定到组合框到 listView
- reactjs - 带有嵌套链接的 React Fabric UI Nav 始终可折叠
- excel - 合并多个 Worksheet_SelectionChange