我在下面有一個腳本。我想運行並獲取所有Office 365郵箱的報告。但有一個屬性EmailAddresses具有超過價值,我想通過在開始時刪除SMTP進行清理,這部分沒有問題,它是最終分割的結果,我堅持使用,我想將其分解爲基於它們的電子郵件地址數量,根據需要提供許多行。我做計數,但在底部構建自定義數組不起作用。單獨的PowerShell拆分值
Get-Mailbox `
| ForEach{
$DisplayName = $_.DisplayName
$PrimarySmtpAddress = $_.PrimarySmtpAddress
$alias = $_.alias
$UserPrincipalName = $_.UserPrincipalName
$EmailAddresses = $_.EmailAddresses
$OtherProxyAddress = $_.EmailAddresses -cmatch "smtp:" -replace "smtp:",""
$StepProxyAddress = ($OtherProxyAddress).count
$number = 0
$UserPrincipalName | Select-Object `
@{n="DisplayName";e={$DisplayName}},`
@{n="alias";e={$alias}},`
@{n="UserPrincipalName";e={$UserPrincipalName}},`
@{n="PrimarySmtpAddress";e={$PrimarySmtpAddress}},`
@{Name="PrimaryProxyAddresses"; Expression={$EmailAddresses -cmatch "SMTP:" -replace "SMTP:",""}},`
do {@{Name="OtherProxyAddress" + $number++; Expression={($OtherProxyAddress)[$number]}}} until($number -eq $StepProxyAddress)
}
這裏是$ OtherProxyAddress原值:
[email protected]
[email protected]
我想要的輸出(特別是對於該屬性)是:
OtherProxyAddress1 [email protected]
OtherProxyAddress2 [email protected]
原始值和期望結果的示例可能有所幫助。 –
這裏是'$ OtherProxyAddress'的原始值: [email protected] [email protected] 我想要的輸出(特別是對於該屬性)是: ' OtherProxyAddress1 \t [email protected] OtherProxyAddress2 \t fred.smith @ company.com' –
@MarcKean這很好,但你可以添加到你的問題,並告訴我們你想要的輸出在問題中看起來像什麼。我問,因爲看到你想要的是我們確信的唯一方法。我可以猜測,但如果我錯了,這將浪費我的時間。 – Matt