0

我想将列值放入数组中。目前由于格式表管道的原因,由于“Microsoft.PowerShell.Commands.Internal.Format.FormatEntryData”是不可能的。

$mailboxnames = get-mailboxdatabase | ft Name

$splits=@()
foreach($names in $mailboxnames){
  $splits += $names.split('-')
}
$splits
4

2 回答 2

2

您只是不必使用格式表。

$mailboxDBs = get-mailboxdatabase
foreach ($mailboxDB in $mailboxDBs)
{
 $mailboxDB.name
}

Mailbox Database 1558034411
archiveMail

不要忘记你在 .NET 上玩的 Powershell 中的一切都是 OBJECT

所以你有两个朋友: 1.gettype() 方法为你提供对象的类型 2.Get-Member CmdLet 帮助你了解对象的属性和方法

Get-member 有许多参数可以帮助您尝试:

$mailboxDBs | Get-Member
于 2012-11-10T07:26:08.040 回答
0

或者使用管道:

$db = Get-MailboxDatabase | Foreach-Object {$_.Name}
于 2012-11-10T17:29:07.733 回答