Pergunta

Aproximando cmdlets de forma conceitual,

  1. Como é que eles fizeram? eles são compilados?

  2. É o equivalente a um arquivo de lote para PowerShell? É um script ou um binário?

  3. Qual é a estrutura usada para armazenar esses cmdlets?

Foi útil?

Solução

cmdlet A PowerShell é uma peça compilado de código .NET, mais precisamente uma única classe, se não me engano. Cmdlets são do tipo dos comandos "nativos" em terra PowerShell, sendo capaz de manipular a entrada de objetos e de saída, bem como normalmente jogando bonito e bem com o pipeline (baseado em objeto).

Cmdlets não têm representação direta no sistema de arquivos, como eles não são programas ou similar. Eles existem apenas dentro PowerShell. Você pode usar o Get-Command cmdlet para consulta todos os cmdlets disponíveis, funções, etc.

Você pode gravação cmdlets com uma linguagem .NET, como C #. Com PowerShell v2, há também a possibilidade de escrever chamado funções avançadas que se comportam de forma semelhante a cmdlets e têm capacidades comparáveis, mas são interpretados código PowerShell, em vez de classes compiladas. Isso pode incorrer em uma sobrecarga de tempo de execução.

Outras dicas

cmdlet A PowerShell é uma extensão criada pelo usuário para a linguagem de script PowerShell. O Cmdlet em si é um .NET classe que se estende desde PSCmdlet. Normalmente, os componentes adicionais são incluídos com o cmdlet para fornecer ajuda e registrar o cmdlet.

A cmdlet permite o acesso a todas as funções acessíveis através da máquina virtual .NET. Isto pode variar de ajudas script simples para programas totalmente funcionais.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top