【问题标题】:Passing a variable to the end of the command将变量传递到命令末尾
【发布时间】:2019-04-18 22:43:11
【问题描述】:

我需要获取 TotalDeletedItemSize 大于 10 GB 的所有 Exchange 用户邮箱(云)。 这个脚本很好用:

Get-Mailbox -ResultSize Unlimited | Get-MailboxStatistics |选择 DisplayName,TotalDeletedItemSize |其中 {(($_.TotalDeletedItemSize -split " ")[0]) -gt 10}

但我还需要输出包含别名。 如果我在 get-mailbox 之后使用 select 传递 ALIAS,则 Get-MailboxStatistics 会引发错误。

【问题讨论】:

  • 要么将您的管道分成独立的步骤 - 这样您就可以保存第一步的输出 - 或者查看类似 -PipelineVariable 的内容。欲了解更多信息,请查看Get-Help about_CommonParameters。

标签: powershell


【解决方案1】:

一种方法是使用 foreach 循环:

Foreach ($mb in (Get-Mailbox -ResultSize Unlimited)) {

   Get-MailboxStatistics $mb.GUID | select DisplayName,TotalDeletedItemSize,@{n="Alias";e={$mb.alias}} | Where {(($_.TotalDeletedItemSize -split " ")[0]) -gt 10}
}

【讨论】:

    猜你喜欢
    • 2013-11-18
    • 2019-02-16
    • 2017-12-15
    • 2012-06-24
    • 1970-01-01
    • 1970-01-01
    • 2019-06-23
    • 2017-06-15
    • 1970-01-01
    相关资源
    最近更新 更多