设为首页 收藏本站
查看: 1054|回复: 0

如何使用Powershell脚本监控Exchange2010(三) Archive邮箱容量和使用情况的发布

[复制链接]

尚未签到

发表于 2018-9-3 09:10:47 | 显示全部楼层 |阅读模式
  写在这篇博客之前的话:
  脚本千变万化却又万变不离其中,再复杂的脚本也是一个模块一个模块搭建起来的。我其实是从11年9月份开始学POWERSHELL的,之前一点编程经验也没有。可见PS其实非常好学,所以我希望我能授人以渔而非鱼,简单的COPY我写好的脚本的确能用,但是有没有想过其实说不定你自己写的话能写的更好?
  Exchange2010(以下简称E14)提供了大量新的功能和变动,比较新的一个概念就是引入了Archive邮箱。使用Archive邮箱有非常多的优点:
  1. 传统的PST文件非常容易损坏,一旦损坏修复比较麻烦,特别是针对一些老员工,因为PST文件都非常巨大。
  2. 没有备份,因为一般都存储在本地硬盘,而将PST存储在网络硬盘微软是不支持的。
  3. Archive邮箱支持OWA和Anywhere的访问,出差无需再携带笔记本电脑查看历史邮件了。
  现有的问题:
  1. 一旦离线,Archive邮箱将无法访问,解决办法是针对经常出差的用户提供大容量的主邮箱
  2. Archive的容量和使用情况在Outlook2010中是无法查看的, 无解决方案
  针对这个问题,我写了一个脚本,每个月跑一次发给所有亚太区的用户以告知对方当前的使用情况和容量的大小。而针对一些还未导入PST文件的用户这点也非常有用,因为一旦Archive的容量小于PST文件则会报错,导致导入失败。
  以上是脚本的由来,现在我们看看如何制作这样的一个脚本:
  首先是理念,我想要通过PS脚本来制作一个全自动查询工具然后将查询到的结果自动发送到用户邮箱。而我要做的只是告诉他被查询人的名字。所以我的脚本就会按照这个理念来设计。大家如果想要自己制作脚本,与其盲目的到处搜索以有的,不如自己静下心来想想看如果自己写,一个模块一个模块的设计该怎么写。看起来很麻烦的代码其实一点一点分析还是很容易理解的。
  虽然EMC(Exchange管理工具台)可以查看当前用户的Archive邮箱的配额但是无法查看使用情况,而通过PowerShell则可以做到:
  Get-Mailbox -Identity $user –archive
  我们来看看输出的结果,输入Get-Mailbox -Identity $user –archive | fl
DSC0000.png

  找到以上两条就是当前用户的配额,如需查看使用情况,可以使用:
  Get-MailboxStatistics -Identity $user –archive |  select displayname,totalitemsize,itemcount,totaldeleteditemsize
DSC0001.png

  这两条命令已经能够得到我们想要知道的一切数据了,我们有配额,有使用情况,现在只需将这些数据放在变量里,让脚本跑完之后将输出的结果发送给用户,我以后就是甩手掌柜啦。哈哈哈哈
  关键点:
  1. 如何将输出的结果发送EMAIL给被查询的用户?
  答:可以调用出.PrimarySmtpAddress.local和.PrimarySmtpAddress.domain的属性中间加个@
  2. 如何确定和调用自己想要的参数?
  答: 可以像我一样,输入命令然后使用管道符| fl 来看具体的参数,挑出我需要的然后再脚本中调用他。
  来看看输出结果:
DSC0002.png

  还是挺漂亮的吧??
  代码如下:
  ###### Users Alias ########
  $user = "自己填"
  ###########################
  $date = get-date
  $mailbox = Get-Mailbox -Identity $user -archive
  $current = Get-MailboxStatistics -Identity $user -archive
  $displayname = $mailbox.DisplayName
  $email = $mailbox.PrimarySmtpAddress.local + "@" + $mailbox.PrimarySmtpAddress.domain
  $arcquota = $mailbox.ArchiveQuota
  $arcsize = $current.TotalItemSize
  $delsize = $current.TotalDeletedItemSize
  $nMsg = "
  Dear $displayname
  This email is automaticly generated by system, all the information will only send to you.
  Following is your archive mailbox status report:
  
  Your Email Account: $email
  Your Archive Mailbox Quota: $arcquota
  Current Useage: $arcsize

  Deleted Item>  
  Please do not reply or forward this email
  Any problem please contact

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-561857-1-1.html 上篇帖子: 如何使用Powershell脚本监控Exchange2010(一) 数据库Mount状态的监控 下篇帖子: Powershell备忘录:在Powershell中创建自定义类
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表