使用PowerShell脚本导出多值联系人字段到CSV
5星 · 超过95%的资源 需积分: 10 82 浏览量
更新于2024-09-11
收藏 2KB TXT 举报
"这篇PowerShell脚本主要用于从Exchange环境中导出具有多值字段(如成员关系)的邮件联系人,并将结果保存到CSV文件中,方便进一步编辑。它特别适用于筛选包含特定字符串(例如`@cre.com.hk`)的主SMTP地址的联系人,并列出这些联系人所属的所有组。"
在PowerShell中,处理多值字段通常涉及到属性的集合,这些属性可以关联多个值,例如用户可能属于多个组。在这个脚本中,我们首先初始化变量,包括`$InputString`用于定义要筛选的SMTP地址的一部分,`$OutputCSV`定义了输出CSV文件的路径。
`Get-MailContact -ResultSizeUnlimited`命令用于获取所有邮件联系人的列表,`ResultSizeUnlimited`参数确保返回所有联系人,而不仅仅是默认限制的数量。然后,使用`Foreach-Object`遍历这些联系人,检查其`PrimarySmtpAddress`是否包含`$InputString`。
如果找到匹配的联系人,脚本会显示开始处理的电子邮件地址,并创建一个空字符串`$result`来存储联系人所属的组。通过`Get-Group -ResultSizeUnlimited -Filter "Members-eq '$dis'"`获取与当前联系人`DistinguishedName`匹配的所有组。这里`$dis`是联系人的唯一标识名。
接着,对于每个找到的组,添加其`samaccountname`到`$result`,并用分号分隔。`Add-Member` cmdlet 用于创建一个新的PSCustomObject,包含两个NoteProperty:一个是"Email",存储联系人的主SMTP地址;另一个是"Groups",存储联系人所属的组列表。
最后,所有创建的对象被添加到数组`$objs`中,并通过`Export-Csv` cmdlet 导出到CSV文件,使用`-NoTypeInformation`参数排除类型信息,以纯文本格式保存,并指定`Encoding UTF8`作为编码方式。
这个脚本对于管理员来说非常有用,他们可能需要快速地查看或编辑与特定域相关的联系人的组成员身份。通过CSV文件,这些数据可以轻松导入其他应用程序,或者进行进一步的数据分析和处理。
2021-02-06 上传
2018-10-23 上传
2021-01-28 上传
2021-03-19 上传
2018-07-17 上传
2021-04-07 上传
2021-02-03 上传
点击了解资源详情
点击了解资源详情
cuilumingrik
- 粉丝: 0
- 资源: 1
最新资源
- 探索AVL树算法:以Faculdade Senac Porto Alegre实践为例
- 小学语文教学新工具:创新黑板设计解析
- Minecraft服务器管理新插件ServerForms发布
- MATLAB基因网络模型代码实现及开源分享
- 全方位技术项目源码合集:***报名系统
- Phalcon框架实战案例分析
- MATLAB与Python结合实现短期电力负荷预测的DAT300项目解析
- 市场营销教学专用查询装置设计方案
- 随身WiFi高通210 MS8909设备的Root引导文件破解攻略
- 实现服务器端级联:modella与leveldb适配器的应用
- Oracle Linux安装必备依赖包清单与步骤
- Shyer项目:寻找喜欢的聊天伙伴
- MEAN堆栈入门项目: postings-app
- 在线WPS办公功能全接触及应用示例
- 新型带储订盒订书机设计文档
- VB多媒体教学演示系统源代码及技术项目资源大全