Loï*_*HEL 37 powershell binding
我经常使用cmdlbinding我的函数或脚本,但总是发现这些东西很深奥,也许你们中的一些人可以分享他们的灯光.
根据get-help about_Functions_CmdletBindingAttribute
CmdletBinding属性是函数的一个属性,使它们像编译的cmdlet一样运行
但我们可以在我们的脚本之上使用它,在这种情况下的功能是什么?ps引擎为其所有输入调用的内部隐式"main"函数?
关于语法现在:
[CmdletBinding(ConfirmImpact=<String>,
DefaultParameterSetName=<String>,
HelpURI=<URI>,
SupportsPaging=<Boolean>,
SupportsShouldProcess=<Boolean>,
PositionalBinding=<Boolean>)]
Run Code Online (Sandbox Code Playgroud)
我们在做什么 ?实例化cmdlbinding对象并为其构造函数提供参数列表?这个语法可以在param()中找到,例如param()这个语法是否有特定的名称,可以在其他地方找到吗?
最后,作为简单的powershellers,我们能够通过设置属性来模仿这个功能并修改脚本的行为吗?
Sha*_*evy 10
一般来说,CmdletBinding是使用Advanced函数创建函数的函数.将它放在脚本的顶部会使脚本成为"高级"脚本.函数和脚本大致相同,其中脚本文件名等同于函数名,脚本内容等同于函数的scripblock部分.
CmdletBinding属性使您可以控制功能,例如添加Confirm和WhatIf支持(通过SupportsShouldProcess),禁用参数位置绑定等.
| 归档时间: |
|
| 查看次数: |
36013 次 |
| 最近记录: |