我有一个CSV文件,最后一列(列J)中有用户名。 我有一个脚本将在J列下运行,并通过从活动目录中提取信息来显示State。 我希望它将信息添加到当前用户名旁边的列K. 下面是脚本。它可以正常获取我无法将其添加到列K的信息。 我放置了一个计数函数(表示$ add1 = $ add1 +1的行),希望我能找到一个解决方案,让我将结果传送到我的CSV文件行$ add1中的CSV文件。我认为有办法做到这一点,但无法弄明白。 感谢
enter code here
Import-Module ActiveDirectory
$add1 = 1
Import-csv C:\Temp\newfile.csv | Select -expand MUID | ForEach {
$add1 = $add1 +1
Get-ADUser -Identity $_ -Properties st | select -ExpandProperty st
}
答案 0 :(得分:2)
您可以这样做:
import-csv C:\Temp\newfile.csv | %{
$k = Get-ADUser -Identity $_.MUID -Properties st | select -ExpandProperty st
$_ | add-member -MemberType noteproperty -Name k -Value $k
$_
} | export-csv -NoTypeInformation C:\Temp\newfile2.csv
如果csv已经有了列k,你只需要将你想要的结果分配给$_.k
答案 1 :(得分:0)
您可以Select-Object
添加具有计算属性的列:
Import-Module ActiveDirectory
Import-csv C:\Temp\newfile.csv | `
Select-Object *,@{n='k';e={ (Get-ADUser -Identity $_.MUID -Properties st).st }} | `
Export-Csv .\users.csv -NoTypeInformation