powershell - 搜索用户列表的组成员身份
问题描述
我对 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]
这个脚本应该返回:
名称
用户1用户2
用户
3
团体
group1,group2,group3,每个用户的其余组
group1,group2,group3,每个用户的其余组
group1,group2,group3,每个用户的其余组
感谢您的帮助!
解决方案
尝试这个:
$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
推荐阅读
- javascript - 使 document.execCommand('insertText', false, 'message') 与 Draftjs 一起使用?
- javascript - React SSR:文档未定义
- wpf - 在带有 Powershell 的 WPF 中的 TextBlock 中使用变量
- javascript - 根据高度将数组划分为多个数组
- javascript - 附加子节点的问题
- regex - Perl 正则表达式字符串替换无法识别字符串中的下划线
- arrays - 空手道数组字段从 JS 函数返回时成为对象
- c# - 我怎样才能更好地为生成的六边形编写这个程序 UV 映射?
- javascript - 如何在 vue .js 上创建具有相同值的复选框
- typescript - 使用 Jest 测试 Vuejs 和 TypeScript 会导致错误“Property 'xxx' does not exist on type 'CombinedVueInstance'