powershell - 如何通过多个管道传递对象/值?
问题描述
Get-Mailbox username
例如让我获得用户的“显示名称”。
Get-MailboxRegionalConfiguration
给我一些更多的信息。
我想用
PS> 获取邮箱用户名 | 获取邮箱区域配置 身份语言 DateFormat TimeFormat TimeZone -------- -------- ---------- ---------- -------- en-US M/d/yyyy h:mm tt W. 欧洲标准时间
我还需要Displayname
来自Get-Mailbox
. 我可以用管道做到这一点吗?
到目前为止,我必须使用 foreach 并希望避免这种情况:
$MBs = Get-Mailbox -ResultSize Unlimited
foreach ($MB in $MBs) {
$Name = $MB.DisplayName
$MRC = $MB | Get-MailboxRegionalConfiguration
$Lang = $MRC.Language
$DF = $MRC.DateFormat
$TF = $MRC.TimeFormat
$TZ = $MRC.TimeZone
}
解决方案
您可以执行以下操作以Get-MailboxRegionalConfiguration
使用其他信息扩展对象:
Get-Mailbox -ResultSize Unlimited | ForEach-Object {
$name = $_.DisplayName
$_ | Get-MailboxRegionalConfiguration |
Select-Object *,@{n='DisplayName',e={$name}}
}
推荐阅读
- sql - sqlContext.sql("query") 中支持的 SQL 函数列表:有,match_recognize.etc
- node.js - 如何在 Node 中使用 Textmate 语法标记代码片段
- vespa - 是否有任何 Grafana 仪表板可用于 Vespa 指标?
- asp.net - 如果用户从电子邮件链接访问我的 asp.net 站点,下载后保存的 PDF 文件已损坏,但手动登录后未损坏?
- c# - 使用正则表达式从许多文件中获取特定数据
- oracle - 传递一个集合 id
- sql-server - 使用动态值的 SQL -PIVOT 表
- excel - 将用户表单文本框值传递给函数时出现运行时错误 13 类型不匹配
- assembly - 关于Assembly中setg和比较的问题
- java - Is the ViewModel responsible for handling all the data related operations of an/a Activity/Fragment?