PowerShell 自动加载自定义模块 "preparing modules"消息卡住

标签 powershell module

我在使用网络位置自动加载我为我的部门编写的自定义 PowerShell 模块时遇到了一个奇怪的问题。我在台式机和笔记本电脑的注册表中添加了网络文件夹的路径,两者都出现了同样的问题。我将模块保存到该文件夹​​,现在每次启动 PowerShell 时,无论是 ISE 还是控制台,都会显示“准备首次使用的模块”消息,但永远不会消失:

PS message

奇怪的是,我仍然能够毫无问题地使用模块中的功能,并且在我运行命令后消息消失,但在那之前它只是停留在那里。我已经让它单独放置了几个小时,看看它是否会消失,但直到我运行某些东西它才会消失。对我来说这没什么大不了的,但我要与我的团队分享这个模块,这可能会让他们感到困惑,而且这有点烦人,所以我想弄清楚为什么这条消息会留下来。有人看过这个吗?

最佳答案

因此,经过一些测试后,我发现,无论出于何种原因,当您将 UNC 网络路径添加到 PSModulePath 注册表项以将路径永久添加到 $env:PSModulePath 变量时,就会发生这种行为。我将注册表项中的路径更改为映射的驱动器路径,带有驱动器号,指向相同的网络位置,但我没有收到烦人的挥之不去的消息。看来 PowerShell 只是不喜欢以“\”开头的模块路径。

关于PowerShell 自动加载自定义模块 "preparing modules"消息卡住,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44790057/

相关文章:

powershell - powershell 的并行 foreach 最多使用 5 个线程吗?

php - 如何创建 Magento-2 扩展包以上传到 Magento-2 官方网站?

python - Sage 的 "var"是如何工作的?

ruby - Ruby 中模块方法和类方法之间的实际区别是什么?

azure - Terraform 模块 rbac 分配

python - 通过文件路径导入模块时使用 Python 多处理

powershell - 使用powershell如何替换文本文件中的分页符?

azure - 访问 IIS 托管的 Web 应用程序,该应用程序通过 PowerShell 使用 AzureAD 凭据来使用 API

powershell - 禁用MSBuild子进程的关闭按钮

iis - 如何使用 PowerShell 设置 IIS ApplicationPool "Private Memory Limit"值