如何更改“winget”的安装位置?

如何更改“winget”的安装位置?

我想将 winget(Windows 的包管理器)的安装路径更改为D:\Program Files\{insert folder name}。这是文档中告诉我使用的命令

winget install --id {insert program id} --location "D:\Program Files\{insert folder name}"

但它却将文件安装在D:\Program

所以我理解的是,它会读取空格处的位置并创建文件夹。为了确保我使用了不带空格的文件夹名称并且它安装正确。

我发布了这个问题堆栈溢出最初但它被标记为计算机硬件/软件并告诉我将其发布在这里,这怎么归为那类?

答案1

此功能于 软件安装路径可以设置吗?#489

2020 年 7 月 11 日的答案是:

Winget 中已经有一个函数,使用winget install Software.Name --location "C:\Folder\Software.Name"

但目前支持有限

但是,我们也刚刚获得了对交互模式 winget install Software.Name 的支持-i,这是一个比--location现在更安全的选择。

location选项是新的,很可能存在错误,而且似乎您已经发现了一个。

最好的解决方案可能是等待这个问题被修复,并添加一个错误报告到https://github.com/microsoft/winget-cli/issues

如果该-i解决方案不可行,那么您可以采取临时解决方法,将文件夹的内容手动移动C到该文件夹​​中,并用指向该文件夹的符号链接D替换该文件夹。CD

有关详细信息,请参阅 在 Windows 上创建符号链接 (又名 Symlinks) 的完整指南

答案2

您可以将“Progra~1”用作“Program Files”,将“Progra~2”用作“Program Files (x86)”。这是由 powershell 或 cmd 语法引起的错误,而不是由 winget 引起的。您需要将路径转换为任何不带空格或任何特殊字符的形式,如果您不想遇到此类问题,这应该是一种常规习惯。

相关内容