Powershell今天真的考验了我的耐心......好吧,所以我做了一个清单来获得我需要的装配。现在,当我有* .psm1和* .psd1文件时,如何正确导入。
文件夹路径:C:\ mypath \ blah \ blah \ Module \ Format-XML \
文件夹中的文件:Format-XML.psd1,Format-XML.psm1
Import-Module -Name "C:\mypath\blah\blah\Module\Format-XML\Format-XML"
然后当我在我的模块中使用我的函数从另一个脚本调用时,无论出于何种原因,都不存在/工作。我做错了什么?
[错误] VERB-NOUN:“VERB-NOUN”一词未被识别为
的名称[ERROR] cmdlet,函数,脚本文件或可运行程序。检查
的拼写[错误]名称,或者如果包含路径,请验证路径是否正确,然后重试。
在* .psd1:
中FunctionsToExport = '*'
在* .psm1:
中#I know... not required but I tried anyways... :(
Export-ModuleMember -Function '*'
答案 0 :(得分:0)
查看导入的模块。您可以通过以下两种方式执行此操作:
导入后:
$mod = Get-Module -Name Format-XML
导入期间:
$mod = Import-Module -Name "C:\mypath\blah\blah\Module\Format-XML\Format-XML" -PassThru
然后,您可以查看$mod
并查看.ExportedCommands
属性。列出了什么?
同时尝试删除第二个Format-XML
(我假设最后一个组件指的是模块本身而不是文件夹)。
答案 1 :(得分:0)
答案:不要忘记在清单中设置根模块...... 叹息
答案 2 :(得分:0)
因此,需要将以下代码添加到psd1中。
# Script module or binary module file associated with this manifest.
RootModule = 'nameOfYourModule.psm1'