我在PowerShell学习的早期阶段,我想知道在Posh中是否有一些很好的动词指导用于cmdlet(或高级函数,无论它们在CTP3中被调用)。
如果我做一个get-verb,我可以看到很多。但我仍然不确定如何布置我的模块。
这是我现在遇到的例子。我有一个小脚本要求Perforce:如果我要同步,哪些文件会改变,它们有多大?它会输出大小的摘要和文件夹的小树,以了解更改的位置(以及需要解析的数量)。
这是一个查询-p4sync吗?或者它是'sync-p4 -whatif'?或其他什么?
在我开始编写大量这些脚本之前,我想确保将它们命名为正确。
答案 0 :(得分:8)
您可以在MSDN上找到list of common verbs以及说明它们应该用于什么。
答案 1 :(得分:4)
这是Windows PowerShell博客上的更新list of approved verbs,截至7月15日。
答案 2 :(得分:3)
通过使用“模块”一词,我猜你正在使用PowerShell V2,它可以让你利用Advanced Functions。
高级功能提供了一种方法,可以将您的功能归因于为-WhatIf和-Confirm提供本机支持
function Sync-PerforceRepository()
{
[cmdletbinding(SupportShouldProcess=$true)]
param (...) #add your parameters
Begin
{
#setup code here
}
Process
{
if ($pscmdlet.ShouldProcess($ObjectBeingProcessed,"String Describing Action Happening")
{
#Process logic here
}
}
End
{
#Cleanup code
}
}