如何将 Chocolatey 软件包安装到另一个驱动器?
How do I install Chocolatey packages to another drive?
我尝试创建一个 .bat
文件来自动在虚拟机上安装多个应用程序。我使用 Chocolatey,但我在安装 3 个应用程序时遇到了一些困难:WinMerge、AdobeReader 和 Paint.net
我想在另一个驱动器上安装这些应用程序:F:\Program Files
。我尝试了很多命令,但 none 有效。
> choco upgrade adobereader -y -ia "INSTALLDIR=""F:\Program Files\Adobe"""
> choco upgrade paint.net -y -ia "INSTALLDIR=""F:\Program Files\paint.net"""
> choco upgrade winmerge -y -ia "INSTALLDIR=""F:\Program Files\WinMerge"""
Paint.net 已安装,但在 C:\ 驱动器中。 Winmerge 提取 F: 驱动器上的所有文件,但未安装。 Adobe Reader 失败了。
首先了解 Windows 应用程序有不同类型的安装程序可能会有所帮助(在 Chocolatey 术语中,我们称它们为本机安装程序)并且它们都接受具有不同参数的自定义目录位置(有时如果它们是本土定制版本,则根本不会)。我们在 https://github.com/chocolatey/choco/wiki/GettingStarted#overriding-default-install-directory-or-other-advanced-install-concepts 中对此进行了记录(根据您对安装参数的使用,您可能已经阅读过)。
- MSI- 它是 TARGETDIR 或 INSTALLDIR(如您所用)。
- NSIS -
/D location with out quotes even if spaces
并且必须作为最后一个参数传递。
- InnoSetup -
/DIR="location"
我们从 2011 年开始实施 https://github.com/chocolatey/choco/issues/258 (with an original https://github.com/chocolatey/chocolatey/issues/32 是有原因的,还有一个更好的原因是我们尚未实施它 - 如果提前不知道安装程序类型是什么,这并不是一件容易的事。这是计划中的事情,因为如果我们能够支持一个开关来覆盖所有开关,这对每个人来说都是一个巨大的胜利。
我终于 运行 这 3 个命令并且它正在工作。
choco upgrade adobereader -y -ia "INSTALLDIR=""F:\Program Files\Adobe"""
choco upgrade paint.net -y -ia "TARGETDIR=""F:\Program Files\paint.net"""
choco upgrade winmerge -y -ia "/DIR=""F:\Program Files\WinMerge"""
经过一段时间的搜索,我发现此功能仅适用于付费客户,不适用于免费用户。 :(
编辑:
mklink /j "C:\Program Files\Docker" "d:\Program Files\Docker"
我尝试创建一个 .bat
文件来自动在虚拟机上安装多个应用程序。我使用 Chocolatey,但我在安装 3 个应用程序时遇到了一些困难:WinMerge、AdobeReader 和 Paint.net
我想在另一个驱动器上安装这些应用程序:F:\Program Files
。我尝试了很多命令,但 none 有效。
> choco upgrade adobereader -y -ia "INSTALLDIR=""F:\Program Files\Adobe"""
> choco upgrade paint.net -y -ia "INSTALLDIR=""F:\Program Files\paint.net"""
> choco upgrade winmerge -y -ia "INSTALLDIR=""F:\Program Files\WinMerge"""
Paint.net 已安装,但在 C:\ 驱动器中。 Winmerge 提取 F: 驱动器上的所有文件,但未安装。 Adobe Reader 失败了。
首先了解 Windows 应用程序有不同类型的安装程序可能会有所帮助(在 Chocolatey 术语中,我们称它们为本机安装程序)并且它们都接受具有不同参数的自定义目录位置(有时如果它们是本土定制版本,则根本不会)。我们在 https://github.com/chocolatey/choco/wiki/GettingStarted#overriding-default-install-directory-or-other-advanced-install-concepts 中对此进行了记录(根据您对安装参数的使用,您可能已经阅读过)。
- MSI- 它是 TARGETDIR 或 INSTALLDIR(如您所用)。
- NSIS -
/D location with out quotes even if spaces
并且必须作为最后一个参数传递。 - InnoSetup -
/DIR="location"
我们从 2011 年开始实施 https://github.com/chocolatey/choco/issues/258 (with an original https://github.com/chocolatey/chocolatey/issues/32 是有原因的,还有一个更好的原因是我们尚未实施它 - 如果提前不知道安装程序类型是什么,这并不是一件容易的事。这是计划中的事情,因为如果我们能够支持一个开关来覆盖所有开关,这对每个人来说都是一个巨大的胜利。
我终于 运行 这 3 个命令并且它正在工作。
choco upgrade adobereader -y -ia "INSTALLDIR=""F:\Program Files\Adobe"""
choco upgrade paint.net -y -ia "TARGETDIR=""F:\Program Files\paint.net"""
choco upgrade winmerge -y -ia "/DIR=""F:\Program Files\WinMerge"""
经过一段时间的搜索,我发现此功能仅适用于付费客户,不适用于免费用户。 :(
编辑:
mklink /j "C:\Program Files\Docker" "d:\Program Files\Docker"