Powershell导入模块找不到模块

标签 powershell module

我正在学习 PowerShell,并尝试构建自己的模块库。

我编写了一个简单的模块 XMLHelpers.psm1 并将其放入我的文件夹 $home/WindowsPowerShell/Modules 中。

当我这样做时:

 import-module full_path_to_XMLHelpers.psm1

它有效。但当我这样做时:

import-module XMLHelpers

它不起作用,我收到错误:

Import-Module : The specified module 'xmlhelpers' was not loaded because no valid module file was found in any module directory.

我已检查环境变量 PSModulePath 是否包含此文件夹。由于它是一个网络文件夹,我也尝试将其移动到本地文件夹并修改 PSModulePath 但没有成功

 $env:PSModulePath=$env:PSModulePath+";"+'C:\local'

知道什么可能导致此问题吗?

最佳答案

模块需要放置在与模块同名的文件夹中。对于您的情况:

$home/WindowsPowerShell/Modules/XMLHelpers/

完整路径为:

$home/WindowsPowerShell/Modules/XMLHelpers/XMLHelpers.psm1

然后您就可以执行以下操作:

import-module XMLHelpers

关于Powershell导入模块找不到模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6412921/

相关文章:

powershell - 如何访问 IIS : drive on remote machine via Powershell?

nginx - 将 Phusion Passenger 安装为动态 Nginx 模块;模块似乎没有加载但没有错误

python - 为什么 python 将导入的模块附加到包中?

android - 统一: Edit Gradle file of Android modules in Unity Assets

powershell - 如何确定我是在Powershell还是cmd中?

powershell - Powershell命令查找注册表项高级审核设置(权限)

powershell - 并行化 Active Directory 查询

c++ - 模块间共享内存

c++ - Visual Studio 中的 "Additional Module Dependencies"和 "Additional BMI Directories"设置

powershell - 在什么情况下需要当 -NoTypeInformation *不* 传递给 ConvertTo-Csv 或 Export-Csv 时发出的信息?