Pipelining

 

Aplica-se a: Exchange Server 2007 SP3, Exchange Server 2007 SP2, Exchange Server 2007 SP1, Exchange Server 2007

Tópico modificado em: 2006-08-15

Pipelining no Shell de Gerenciamento do Exchange é o ato de um cmdlet usar a saída de outro cmdlet ao executar uma operação. O pipelining é realizado usando o símbolo de canalização "|". Todos os verbos no mesmo conjunto substantivo-cmdlet podem usar informações canalizadas de outro comando. Alguns conjuntos de substantivo-cmdlet permitem que você transmita dados através do pipeline para outro conjunto de substantivo-cmdlet.

Usando pipelining para executar várias ações

O uso de pipelining para unir as ações de dois ou mais cmdlets fornece ao Shell de Gerenciamento do Exchange o recurso de composição, o que permite usar componentes menores e convertê-los em algo mais poderoso. Por exemplo, você pode usar um cmdlet para coletar dados, passar esses dados para um segundo cmdlet para filtrar os dados para um subconjunto e, em seguida, passá-los para um terceiro cmdlet para atuar apenas no subconjunto.

Por exemplo, o seguinte comando usa pipelining para mover todas as caixas de correio no Server1 para o banco de dados Executives no Server2 usando o cmdlet Move-Mailbox, com base na saída que é canalizada do cmdlet Get-Mailbox:

Get-Mailbox -Server Server1 | Move-Mailbox -TargetDatabase Server2\Executives

Usando pipelining para processar dados de outro cmdlet

Você pode também usar pipelining para processar dados que sejam a saída de um cmdlet. Por exemplo, para obter uma lista de todos os processos em que a propriedade HandleCount do processo é maior que 400, você pode executar o seguinte comando:

Get-Process | Where { $_.HandleCount -gt 400 } | Format-List

Nesse exemplo, o cmdlet Get-Process passa objetos para o cmdlet Where-Object. O cmdlet Where-Object escolhe os objetos que têm uma propriedade chamada HandleCount com um valor maior que 400.

Nesse exemplo, a propriedade HandleCount é precedida pela variável $_. Essa variável é criada automaticamente pelo Shell de Gerenciamento do Exchange para armazenar o objeto de pipeline atual. O cmdlet Where-Object  envia esses objetos para o cmdlet Format-List para serem exibidos. 

O uso de objetos estruturados, em vez de texto, é um dos recursos mais espetaculares do Shell de Gerenciamento do Exchange. O uso de objetos estruturados forma a base de um modelo poderoso de administração de composição.

Para obter mais informações sobre objetos estruturados, consulte Dados estruturados.

Usando pipelining para relatar erros

Para relatar erros, você pode usar o pipeline de erro. O pipeline de erro permite que você relate erros enquanto um comando é executado. Isso significa que você não precisa esperar até que a execução do comando seja concluída ou colocar as informações de erro no pipeline de resultado padrão. O cmdlet Write-Error grava seus argumentos no pipeline de erro.

Para obter mais informações sobre pipelining, execute o seguinte comando no Shell de Gerenciamento do Exchange:

Get-Help About_Pipeline