要了解计算机上可用的PowerShell模块,请使用该命令
Get-Module -ListAvailable
Run Code Online (Sandbox Code Playgroud)
这将返回包含module-type,-name和导出命令的列表.但导出的命令始终为空并且只显示{}.为什么不显示?
我是否必须使用其他参数或是否有另一个cmdlet或方法来检索可用的命令?
我有一个具有多种功能的模块.
由于我以非PowerShell方式命名它们,我想重命名它们.但是由于模块已经在使用中,我想保留旧的函数名称.
实现这一目标的最佳方法似乎是使用别名.我已经有一个模块清单,其中说明:
AliasesToExport = '*'
Run Code Online (Sandbox Code Playgroud)
所以我在模块中创建了一个别名New-Alias -Name test -Value oldFunctionName.
功能像往常一样导入,但别名不存在.
我知道我可以使用模块中的Export-ModuleMember.但我有一个已经应该照顾的清单.
所以最后我的问题是:
为什么不通过清单导出别名?
函数本身是否有特殊的位置,我可以或者必须定义别名?或者我是否必须在特殊地方使用New-Alias cmdlet?
我在考虑像参数别名这样的东西:
[parameter(Mandatory=$true, Position=0)][Alias("name","path")][String]$filename
Run Code Online (Sandbox Code Playgroud)
但对于功能而言.