1

MS 将 Documents 文件夹硬编码为 WindowsPowerShell 的默认位置是否有很好的技术或其他原因?MS 过去曾因过多的配置而不是约定而受到批评(WCF?),但可以在 PowerShell 中进行更多配置。我和我认为大多数开发人员都喜欢将他们的开发工作集中在一个单独的文件夹或卷中,远离个人和系统文件。

例如,如果您安装 PoshGit,它将自行安装在 C:\Users\Your Name\WindowsPowerShell\Modules 中。我不希望它安装在我自己的开发分区 d:\Dev\PowerShellScripts 中。没有控制此位置的环境变量。

这是有原因的还是我不明白?

4

1 回答 1

1

你能再解释一下自己吗。

根据我的理解,PowerShell.exe 解释器基目录是由 , 定义的$env:HOMEDRIVE$env:HOMEPATH可以使用用户配置文件进行更改。

如以下屏幕截图所示:

PowerShell 基础目录 Active Directory 配置文件设置


编辑:

好的,屏幕截图来自 Active Directory MMC 中的用户属性,您的 Windows 7 用户属性中有一个最简单的。但这与你的问题无关。

您的问题与模块安装有关。您必须知道的是,模块可以安装在任何地方(即使在共享目录中也可以使用一些技巧)。默认情况下,环境变量$env:PSModulePath指向Get-Module -ListAvailable查找它们的路径。因此,您可以添加d:\Dev\PowerShellScripts\Modules此路径,然后将C:\Users\Your Name\WindowsPowerShell\ModulesPoshGit 创建的子文件夹复制到您的Modules目录中,它应该可以工作。与 Snapins 相对的模块不需要注册。

现在 PoshGit 选择将模块放在用户配置文件中,而不是让您选择位置的原因是 PoshGit 安装程序问题。

有关更多解释,请阅读Modulesabout_environment_variables

于 2012-11-06T08:41:09.607 回答