我有一个关于在powershell中从data.json
文件读取LDAP库的问题。我希望memberOf字段只打印组名,如groupname
本身,而不是整个LDAP路径,如CN=groupname,OU=Groups,DC=domain,DC=local
。
我的代码:
cls
$data = Get-Content C:\data.json | ConvertFrom-Json
$entries = $data.entries
$users = $entries.attributes
$i = 1
foreach ($user in $users){
$sAMAccountName = $user.sAMAccountName
$memberOf = $user.memberOf
echo $i
echo $sAMAccountName
echo $memberOf
echo "-----------------------"
$i++
}
$i = $null
输出:
1
batman
CN=Gotham,OU=Groups,OU=UNIVERSUM,DC=universum,DC=local
CN=DC-comics,OU=Groups,OU=UNIVERSUM,DC=universum,DC=local
CN=Justice-League,OU=Groups,OU=UNIVERSUM,DC=universum,DC=local
-----------------------
2
superman
CN=Metropolis,OU=Groups,OU=UNIVERSUM,DC=universum,DC=local
CN=DC-comics,OU=Groups,OU=UNIVERSUM,DC=universum,DC=local
CN=Justice-League,OU=Groups,OU=UNIVERSUM,DC=universum,DC=local
-----------------------
3
ironman
CN=New-York,OU=Groups,OU=UNIVERSUM,DC=universum,DC=local
CN=Marvel,OU=Groups,OU=UNIVERSUM,DC=universum,DC=local
CN=Avengers,OU=Groups,OU=UNIVERSUM,DC=universum,DC=local
-----------------------
我想得到:
1
batman
Gotham
DC-comics
Justice-League
-----------------------
2
superman
Metropolis
DC-comics
Justice-League
-----------------------
3
ironman
New-York
Marvel
Avengers
-----------------------
1条答案
按热度按时间4dc9hkyq1#
应该可以做到
但由于
$user.memberOf
可能是一个数组,因此您可以执行以下操作:或仅替换: