gpt4 book ai didi

powershell - 在指定日期范围内没有用户的用户 session 数据

转载 作者:行者123 更新时间:2023-12-05 01:37:03 26 4
gpt4 key购买 nike

我正在使用以下查询从 o365 skype for business 服务检索指定日期范围内的用户 session 信息。

$mbxes = Get-CsOnlineUser | select UserPrincipalName
$startTime = "5/1/2018"
foreach ($mbx in $mbxes) {
Get-CsUserSession -User $mbx -StartTime $startTime
}

运行此查询会针对我正在检索的所有邮箱发出以下警告:

WARNING: There is no user session data for the user @{UserPrincipalName=account1@companyX.onmicrosoft.com} within the specified date range 01/05/2018 00:00:00 -07:00 to
11/06/2018 05:22:31 -07:00.

然而,当我只是运行这个命令时:

$mbxes = "account1@companyX.onmicrosoft.com"
$startTime = "5/1/2018"
foreach ($mbx in $mbxes) {
Get-CsUserSession -User $mbx -StartTime $startTime
}

我正在获取响应此邮箱的所有 session 数据。我想知道为什么当我创建一个包含所有邮箱地址的变量时,即使存在 session 数据,也没有返回数据。

最佳答案

在您的第一个命令中,您包括 |选择 UserPrincipalName。这会将 $mboxes 分配为仅具有 UserPrincipalName 属性的对象数组。

从第二个命令来看,Get-CsUserSession 似乎期望 -User 参数是一个字符串,但您仍在传递一个对象。您可能可以使用以下任何方法解决问题:

UserPrincipalName 展开成一个字符串,然后你就有了一个字符串数组:

$mbxes = Get-CsOnlineUser | select -ExpandProperty UserPrincipalName
$startTime = "5/1/2018"
foreach ($mbx in $mbxes) {
Get-CsUserSession -User $mbx -StartTime $startTime
}

另一种扩展得到字符串数组的方法:

$mbxes = (Get-CsOnlineUser).UserPrincipalName
$startTime = "5/1/2018"
foreach ($mbx in $mbxes) {
Get-CsUserSession -User $mbx -StartTime $startTime
}

获取 session 时显式选择属性:

$mbxes = Get-CsOnlineUser | select UserPrincipalName
$startTime = "5/1/2018"
foreach ($mbx in $mbxes) {
Get-CsUserSession -User $mbx.UserPrincipalName -StartTime $startTime
}

关于powershell - 在指定日期范围内没有用户的用户 session 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50797785/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com