Powershell 格式表不显示列数据
我正在使用下面的powershell命令读取csv文件,并将计算机名与上次登录日期为181天的员工名进行匹配。出于某种原因,输出中的Employee_Name列仅在每一行上显示{}。知道为什么不返回员工姓名吗Powershell 格式表不显示列数据,powershell,active-directory,Powershell,Active Directory,我正在使用下面的powershell命令读取csv文件,并将计算机名与上次登录日期为181天的员工名进行匹配。出于某种原因,输出中的Employee_Name列仅在每一行上显示{}。知道为什么不返回员工姓名吗 Import-Module ActiveDirectory $Days = (Get-Date).AddDays(-181) $Computers = @{} Import-CSV -Path c:\PS\ComputerNames.CSV | % { $Computers[$_.C
Import-Module ActiveDirectory
$Days = (Get-Date).AddDays(-181)
$Computers = @{}
Import-CSV -Path c:\PS\ComputerNames.CSV | % { $Computers[$_.Computer_Name] = $_.Employee_Name }
Get-ADComputer -Property Name,lastLogonDate -Filter {lastLogonDate -lt $Days} -Server servername -Searchbase "OU=US,DC=Domain,DC=net" | ? { $Computers.Keys -contains $_.Computer_Name } | select Name,lastLogonDate,@{n='Employee_Name';e={$Computers[$_.Computer_Name]}} | ft
当您在调试器中查看它时,是否尝试通过管道传输该字段来获取成员?我怀疑Format Table并没有扩展的是数组,但当您将鼠标移到数组上时,调试器能够将其展开。您正在将$Computers定义为数组。也许您只关心数组中的第一个元素,您可以将“Employee_Name”定义为数组的第一个元素,而不是整个数组(可能只有一个元素) 您的域和林功能级别是什么?域美国城市计算机该部分工作正常,它返回计算机名和上次登录日期。当我调试并将鼠标悬停在EmployeeName列上时,它只会显示EmployeeName列,而不会在输出中显示它