对于PowerShell和网站,我是一个陌生的人。
我的问题是我找到了已修改的脚本。该脚本有效,但仅部分有效;它没有返回所有组。仅4组,之后显示“ .....”,没有其他信息(您可以看到图片)。
基本上我想要做的是以下内容:
我有100个用户,我需要导出这100个用户的组成员身份。
[$users = Get-Content "D:\users.txt"
$adjob = foreach ($user in $users) {
Get-ADUser -server "myserver" –Identity $user –Properties MemberOf
}
$adjob | Select-Object Name,@{N='Group';E={$_.MemberOf -replace '^CN=(\[^,\]+),OU=.+$','$1'}} | Format-Table -AutoSize | out-file D:\users.csv][1]
此脚本应返回:
名称
user1
user2
user3
组
group1,group2,group3,每个用户的其余组
group1,group2,group3,每个用户的其余组
group1,group2,group3,每个用户的其余组
谢谢您的帮助!
答案 0 :(得分:0)
尝试一下:
$users = Get-Content "D:\users.txt"
$adjob = foreach ($user in $users) {
Get-ADUser -server "myserver" –Identity $user –Properties MemberOf
}
$adjob | foreach {"`n`n";$_.name, $((($_.MemberOf -split ",")| Select-String "CN") -replace "CN=","")}
输出应为下面的用户名和组名。 "`n`n"
将在每个用户之后放置两个空白行。
对于您的特殊情况,请尝试以下操作:
首先在PowerShell上输入$FormatEnumerationLimit=-1
,然后将原始脚本中的Format-Table -AutoSize
替换为Format-Table -AutoSize -Wrap
或Format-List