我正在为我的应用程序编写自定义Powershell cmdlet,我需要为某些cmdlet提供别名。所以我要说我有cmdlet Get-DirectoryListing,我想在这个cmdlet中添加Alias(比如'gdl')。我怎么能这样做?
AliasAttribute在此处不起作用,因为它仅适用于Properties,Indexers或Field声明。另外我知道我们可以使用Set-Alias命令,但不知道放在哪里。
是否可以以编程方式将多个别名添加到cmdlet?
答案 0 :(得分:3)
您需要创建一个psm1文件(powershell module),您可以在其中使用您的cmd特定您的dll来加载并以这种方式添加别名:
在你的模块文件夹中(Get-ModuleFolder
给出一个列表,如果你有更多的默认值,在我的例子中,我使用第一个)创建一个与.dll同名的文件夹< /强>
以及包含此内容的 SameNameOfYourDll.psm1 :
Import-module "$((Get-ModulePath)[0])mycustomcmdlet\mycustomcmdlet.dll"
set-alias gdl Get-DirectoryListing -scope Global
对于更多的提余模块构建,请参见module manifest
Module manifest is the preffered way for .dll with custom cdmlets