Exchange中遇到一个小需求,有很多部门要申请动态通信组,问题是二级部门三级部门四级部门非常非常多。……

Get-ADObject -LDAPFilter "(&(&(ou>="")))" -SearchBase 'OU=xx,OU=xxx,DC=xxx,DC=xxx,DC=com' -Properties CanonicalName | FT CanonicalName -A |Out-File d:\oudaoteng.csv -Encoding utf8

以上语句需要有Active Directory的PowerShell管理工具可以执行,能够输出类似如下的文字

contoso.com/xxxx公司/xxxxsales/产业营销部
contoso.com/xxxx公司/xxxxsales/商务运营
contoso.com/xxxx公司/xxxxsales/商务运
contoso.com/xxxx公司/xxxxsales/华东品牌营销中心
contoso.com/xxxx公司/xxxxsales/商务运
contoso.com/xxxx公司/xxxxsales/商务运营服
contoso.com/xxxx公司/xxxxsales/华北品牌营销中心
contoso.com/xxxx公司/xxxxsales/商务运营服组
contoso.com/xxxx公司/xxxxsales/商务运营
contoso.com/xxxx公司/xxxxsales/商务运
contoso.com/xxxx公司/xxxxsales/华南品牌营销中心

好吧,上面的输出结果其实是假的,不过可以保证,这些OU是不会有重名的,而且连子OU也包含了

接下来就是一个苦逼的操作了

打开这个CSV文件,复制一个新的sheet,把文件拷贝过去,去掉域名和/部分,这样就剩下中文部分了,我准备用中文部分做这个动态通讯组的中文名字,然后再拉一列,随便打点字做英文名字。【这块可以用excel,取一下中文名字的首字母】

第一行给他们命名一下,cn  cb  ca  ,当然这都是随便写的。

好了,拿到这个文件之后,要把它弄成UTF8格式的【这依然要花点小功夫】

最后去Exchange的EMC中运行一下下面的命令。

Import-Csv -Path e:\oudaoteng.csv | foreach {  new-DynamicDistributionGroup -Name $_.cb -RecipientContainer $_.cn -IncludedRecipients 'AllRecipients' -Alias $_.ca    }

或者用下面这个句子,他会把输出“结果”输出到一个文本文件中。注意是结果,这里也可以不用select *,那么输出的东西会少一些,或者可以选择需要的输出项目

import-Csv -Path d:\oudaoteng.csv |     foreach {  new-DynamicDistributionGroup -Name $_.cb -RecipientContainer 'contoso.com' -IncludedRecipients 'AllRecipients' -Alias $_.ca  |select *|out-file c:\file.txt -append    }

然后就是秒开,爽!

转载于:https://blog.51cto.com/jiushu/1649614

PowerShell在Exchange2010下快速创建动态通讯组相关推荐

  1. PowerShell在Exchange2010下交互式创建域用户和邮箱

    这次需求也很简单,但是问题是你架不住要操作的邮箱那么多啊... 依然PowerShell搞定,需要Exchange的相应模块 1 2 3 4 5 write-output "本命令用来快速创 ...

  2. PowerShell在Exchange2010下快速开启邮箱

    有过Exchange2010运维经验的朋友都知道,我们如果在图形界面一次性的为多个域账户开启邮箱的话,并且当用户的名字是中文的,那么会造成用户别名是乱码,这是一件非常悲剧的事情. 经过多次测试,已经用 ...

  3. windows下快速创建大文件

    windows下快速创建大文件 F:/>fsutil file createnew wu 20480000000 已创建文件 F:/wu 也可以使用API SetEndOfFile

  4. virtualbox拷贝文件夹 linux,VirtualBox下快速创建新的虚拟机——复制vdi文件

    VirtualBox下通过复制已存在的vdi文件可以快速创建新的虚拟机. 点击新建(ctrl + n): 设置虚拟电脑名称和系统类型: 分配内存大小: 选择使用已有的虚拟硬盘文件(vdi文件). 其中 ...

  5. PowerShell在Exchange2010下交互式修改群组审批人和免审批邮箱

    1 依然是苦逼的Exchange2010运维,这两天学习写PowerShell,来简化以往很麻烦的命令行操作. 这次采用的是交互的方式针对特定的动态邮件组创建审批人,以及配置免审批的邮箱(也就是哪些人 ...

  6. 一个超级好用的插件—EIDE,在VSCODE下快速创建ARM工程

    大家好,我是小麦,今天介绍一下使用EIDE在VSCODE快速搭建MCU开发环境,图文并茂,建议收藏哈. 宇宙最强IDE--visual studio,这个应该没人反驳吧,如今微软又出来一款开源跨平台的 ...

  7. idea下快速创建SpringBoot项目

    SpringBoot版本和依赖可以根据自己需求进行配置. 创建成功后如果要修改依赖: 添加依赖后右上角会出现mvn更新依赖的标志,点击后下载或更新依赖.

  8. Windows下快速创建指定大小的空文件

    前言 为什么要创建空文件? 当初,我是为了给网吧服务器的缓存盘做占位.. 我不知道WWDS的开发是怎么想的?又或者他们缺乏经验? 如果选用了一固态硬盘做缓存盘,那么它会只给硬盘保留5G的可用空间,其余 ...

  9. cmd 下快速创建任意大小(超大)文件

    方法:点击打开cmd窗口后执行命令 fsutil file createnew 文件名  文件大小(以字节为单位) 例如:

最新文章

  1. 干货 |“NLP”与“语言学家”的那些事儿
  2. Allegro 如何把铺好铜皮的平面层互换
  3. struts2+kindeditor4.0.5的上传图片的实现
  4. K8S 基本架构与常用术语
  5. windows下使用svn命令行
  6. java communal_平台用英语怎么说
  7. 关于8位AD_DA转换芯片的采样率问题
  8. SQL Server时间函数
  9. 在斯坦福,做 Manning 的 phd 要有多强?
  10. 【吼吼睡cocos2d学习笔记】第四章 - 第一个游戏
  11. div中文字,图片居中对齐,兼容FF、IE
  12. 虚拟主机php.ini在哪里,虚拟主机的php.ini配置文件在哪里
  13. Asp.net2.0里访问Web.config的Section的示例
  14. Java类的方法的理解
  15. 如何关闭135、137、138、139、445端口方法
  16. 重启oracle数据库
  17. 12w字超全C语言数据结构考研笔记基础知识大总结!基于王道、严蔚敏相关丛书及网络相关资料、包含案例分析
  18. Gateway 网关路由、断言、过滤
  19. 发现一个非常好用的编程字体 看起来非常舒服 - Tahoma
  20. SAP B1安装教程

热门文章

  1. GPUImage源码解读之GPUImageFramebuffer
  2. [转]numpy性能优化
  3. BZOJ 1051 受欢迎的牛(Tarjan缩点)
  4. Android通过PHP服务器实现登录
  5. iOS小技巧:用runtime 解决UIButton 重复点击问题
  6. CSS中属性的书写顺序
  7. NavReady 试用小记(2)
  8. asp.net控件开发基础(21)
  9. 简单文件的上传与保存
  10. 如何系统性的分析一个新idea的可行性?