频道直达 - 专题 - 新闻 - 技巧 - 组网 - 开发 - 安全 - web编程 - 图像 - 操作系统 - 数据库 - 教育 - 旅游 - 健康 - 时尚 - 驱动 - 软件 - 游戏 - 多媒体 - ERP - 讨论组

Exchange Management Shell 入门

来源:ZDNet 作者: 出处:巧巧读书 2007-10-09 进入讨论组

在掌握Exchange Management Shell常用术语,你已经学习了有关Exchange Management Shell (EMS)的一些术语,这些术语由微软在Exchange 2007中引入。这里,你会学到如何使用EMS命令,以及如何格式化命令的输出。你还将初步领略怎样把你的命令管(pipe,即把一个命令的输出作为第二个命令的参数进行处理)进其他命令中。

学习EMS,首先最最重要的是学习如何得到帮助。对于这,EMS提供了两组办法。第一个方法是使用"help cmdlet" (cmdlet指command-let,就是小命令的意思,也就是EMS通过命令行输入的命令)或者"cmdlet -?"。这让EMS给出指定的命令cmdlet的语法和用法的简短信息。就如图A所示。

Exchange Management Shell 入门(图一)

图A 让EMS给出指定的命令cmdlet的语法和用法的简短信息。

注意这个简短帮助没有给你任何各个参数的详细信息,它不过是给你指出这些参数数据的类型(是字符串、数字,等等)。有时候,那些信息真的不太够。于是EMS提供了一种获得更多详细帮助的方法。使用这个命令"help cmdlet -detailed",你就可以得到对每个参数都有详尽说明的好多页帮助,一定能满足你的期望。如果你要得到更多技术帮助,还可以使用"help cmdlet -full"。这个命令向你提供各个参数的技术信息。举例如,-full选项会告诉你某个特定参数是否为必需,它是否接受管道化(pipelined)的输入,以及你是否可以在参数值中使用通配符。

你现在才看过一个cmdlet,get-casmailbox。当你不使用参数运行时,get-casmailbox cmdlet返回一列当前Exchange企业内部的邮箱,以及一些概括信息,如每个邮箱是否激活了OWA、POP 和IMAP。图 B向你展示输出结果。

Exchange Management Shell 入门(图二)

图B get-casmailbox 命令返回企业的邮箱信息

现在,可能你想操作某个特定邮箱对象的属性,比如禁止某个用户使用POP从你的服务器接收邮件。下面这个命令会禁止某个特定用户对邮箱的POP3访问。

set-CASMailbox -identity cat.francis@contoso.com -POPEnabled:$false
在该例中,"-identity"参数用于指定要操作的确切对象。然而,因为身份对象(identity object,本例中是cat.francis@contoso.com本就必需,所以"-identity"选项不是不可或缺。换言之,下面的命令和上述例子在功能上等同:
set-CASMailbox cat.francis@contoso.com -POPEnabled:$false

set-CASMailbox -POPEnabled:$false cat.francis@contoso.com
对于其他的cmdlet,你可能就不需要指定某些其他的参数名字,只需要按特定顺序打入参数值就可以了。就个人来讲,我不喜欢这种方法,因为它太容易出错了,可读性也说不过去。

运行完set-casmailbox cmdlet,你可以打进get-casmailbox,回车查看你的更改生效了没有。

以get-casmailbox命令为例,你可能希望收集用户邮箱的其他信息,而不像刚才见到的那样,只能知道哪些服务可用,哪些服务被禁止了。通过把你的命令管入format-list命令,你可以得到用于输出的可能参数的完整列表。使用format-list时要仔细,尤其是对于大型数据组。对于此命令,除非你主动限制其输出内容,不然会显示每一个邮箱的每一项参数,如果你有成百上千的邮箱,这肯定要花好长好长时间!图 C是该命令针对单个邮箱的输出。

Exchange Management Shell 入门(图三)

图C 你可以在输出中得到的参数非常之多。

产生图C我所用的命令是:

get-casmailbox | format-list

注意两个cmdlet之间的竖杠。在本系列入门的第1部分中,我讲过管道和管道化的问题。这个符号一般称之管道符(pipe character),在EMS里,它用来代表一个命令的结果交给另一个命令继续处理。本例中,get-casmailbox命令的完整输出被传递给format-list命令,后者等待前者的输出,并且负责把前者的输出进行格式化处理,这样最后输出的信息是清单格式(list form),而不是默认的表格格式(tabular)。Format-list有一个别名——"fl"。

很明显,让所有信息都输出也不总是悦人心意。format-list虽然是得到可用显示参数列表的了不起的方法,但一点不落地显示所有信息也远非实用。因此,你可以把get-casmailbox的输出结果管入另一个cmdlet——select。Select命令可以带一系列参数名,它只显示参数指定的信息,而不会眉毛胡子一把抓。

看看下面这个select cmdlet如何工作:

Get-casmailbox | select identity,guid

这个命令把get-casmailbox的显示结果管入select命令,之后就只有对象的GUID和身份(identity)被显示了,就如同下面图 D展示的那样。

Exchange Management Shell 入门(图四)

图D 这个命令限制输出,只指定了两个输出域。

不过,这种方法的输出很快又变得笨拙不看了。看图 E就知道是怎么回事了。

Exchange Management Shell 入门(图五)

图E这样的输出真是太丢三落四。

注意,图E的输出已经严重抹煞细节,甚至到了完全无用的地步。所以,你该怎么办呢?很简单:把它管入format-list,让它变成清单(list)而非现在的表格(table)。就像这样:

get-casmailbox | select identity,guid,samaccountname,primarysmtpaddress | fl

Exchange Management Shell 入门(图六)

图F 这个输出简单易读
 
总结

到此为止,Exchange Management Console的入门就算完成。在以后的许多文章里,我将着重探讨用EMS真刀真枪的完成工作任务,所以就这个话题,以后我们还有见面机会。Exchange Management Shell是Exchange Server 2007中的一个新的功能。这个shell的基本目的是做为一个命令行和脚本界面。

文字:http://www.qqread.com/mail-server/r358860.html 更多文章 更多内容请看Solaris基础知识入门Exchange入门微软邮件服务器专题,或进入讨论组讨论。
收藏此文】【 】【打印】【关闭
相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
巧巧读书宗旨
相关专题
讨论组问题推荐
站内各频道最新更新文档
站内最新制作专题
热门关键字导读
Photoshop教 程照片处理 照片制作 PS快捷键 抠图
计 算 机 故 障XP系统修复
艺 术 与 设 计设计 流媒体 设计欣赏 边框
计 算 机 安 全ARP
站内频道文章精选
巧巧电脑频道编辑信箱  告诉我们您想看的专题或文章