以概念方式接近cmdlets:
它们是如何制作的?它们是否编译过?
它是PowerShell的批处理文件等效物吗?它是脚本还是二进制文件?
存储这些cmdlet所使用的结构是什么?
以概念方式接近cmdlets:
它们是如何制作的?它们是否编译过?
它是PowerShell的批处理文件等效物吗?它是脚本还是二进制文件?
存储这些cmdlet所使用的结构是什么?
PowerShell的命令是由.NET代码编译而成的,更确切地说,如果我没有弄错的话,它们是单个类。Cmdlet是PowerShell中的"本地"命令,可以处理对象输入和输出,并通常与(基于对象的)管道很好地配合使用。
Cmdlet在文件系统中没有直接表示,因为它们不是程序或类似的东西。它们只存在于PowerShell中。您可以使用Get-Command
cmdlet查询所有可用的cmdlet、函数等。
您可以使用.NET语言(如C#)编写cmdlet。从PowerShell v2开始还可以编写所谓的高级函数,这些函数的行为类似于cmdlet,并具有相似的功能,但它们是解释的PowerShell代码,而不是编译的类。这可能会产生运行时开销。
这个链接可能有助于理解PowerShell cmdlet:
http://www.powershellpro.com/powershell-tutorial-introduction/tutorial-powershell-cmdlet/