我正在为我的应用程序编写自定义 Powershell cmdlet,并且需要为某些 cmdlet 提供别名。假设我有 cmdlet Get-DirectoryListing 并且我想向此 cmdlet 添加别名(例如“gdl”)。我怎样才能做到这一点?
AliasAttribute 在这里不起作用,因为它仅适用于属性、索引器或字段声明。我也知道我们可以使用 Set-Alias 命令,但不知道把它放在哪里。
是否可以以编程方式向 cmdlet 添加多个别名?
您需要创建一个 psm1 文件(powershell模块 http://msdn.microsoft.com/en-us/library/windows/desktop/dd878310%28v=vs.85%29.aspx),您可以使用 cmdlet 来指定 dll,以这种方式加载和添加别名:
在您的模块文件夹中(Get-ModuleFolder
如果您有更多的默认列表,请给出所有列表,在我的示例中我使用第一个)创建一个与您的 .dll 文件名相同的文件夹
and a SameNameOfYourDll.psm1包含以下内容:
Import-module "$((Get-ModulePath)[0])mycustomcmdlet\mycustomcmdlet.dll"
set-alias gdl Get-DirectoryListing -scope Global
有关更多萃余液模块构建,另请参阅模块清单 http://msdn.microsoft.com/en-us/library/windows/desktop/dd878337%28v=vs.85%29.aspx
模块清单是使用自定义 cmdlet 的 .dll 的首选方式 http://kungfukode.blogspot.it/2011/05/write-your-first-powershell-cmdlet-in-c.html.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)