我在do-until块中使用以下内容循环,直到存在指定的Exchange Online迁移状态:
(Get-Migrationbatch -Identity $MigrationBatchName | Where {$_.Status -like "Completed" -or "CompletedWithErrors" -or "Corrupted" -or "Failed" -or "Stopped"})
Run Code Online (Sandbox Code Playgroud)
但是,上面仍然返回状态为"正在同步"的作业,因此无论如何都会继续执行该脚本.
我试过-match,-eq但仍然是一样的.
我错过了什么?
我正在使用以下内容仅针对相关用户。
Get-ADUser -Filter * -SearchBase $TargetOU -Properties * | Where-Object {$_.adminDescription -eq "Azure_Sync" -and $_.proxyAddresses -notlike "sip*" -and $_.sn -ne $null -and $_.msRTCSIP-PrimaryUserAddress -ne $null
Run Code Online (Sandbox Code Playgroud)
但是,它不喜欢最后一个 $_.msRTCSIP-PrimaryUserAddress。“-”在这里破坏了东西,所以我如何以与其他属性相同的方式使用这个属性?