参数

 

适用于: Exchange Server 2007 SP3, Exchange Server 2007 SP2, Exchange Server 2007 SP1, Exchange Server 2007

上一次修改主题: 2007-06-20

大多数 cmdlet 依赖于参数。参数是向 cmdlet 提供信息的元素,用于标识要作用于的对象及其属性,或控制 cmdlet 执行任务的方式。参数名称以连字符 (-) 开头并后跟参数值,如下所示:

Verb-Noun -ParameterName <ParameterValue> 

在此简单示例中,参数名称之前的连字符向 Exchange 命令行管理程序表明紧跟在连字符后面的词是传递给 cmdlet 的参数,该参数之后下一个单独的词是此参数的值。

位置参数

位置参数是可以不通过指定参数名称而指定参数值的参数。如果 Parameter Position 属性为整数,则参数为位置参数。此整数指示在命令行上的位置,cmdlet 可在该位置找到参数的值。

大多数 cmdlet 仅有一个位置参数,Identity。如果 Identity 在 cmdlet 中可用,则其始终位于位置 1。如果参数不是位置参数,则视其为 named 参数。必须指定 named 参数的参数名和参数值。

下列两个命令执行相同的任务:返回名称为 "Contoso" 的接收连接器的配置信息。

Get-ReceiveConnector -Identity "Contoso"
Get-ReceiveConnector "Contoso"

参数详细信息

Get-Help cmdlet 检索的信息的参数部分包含关于各个参数的详细信息,也称为元数据。以下示例来源于 Get-Service cmdlet。

PARAMETERS
    -ServiceName System.String[]

        Parameter required?           false
        Parameter position?           1
        Default value                 *
        Accept pipeline input?       true
        Accept wildcard characters?  True

本示例来自 Get-Service cmdlet,包含某些非常具体的详细信息(与可以为 ServiceName 参数传递的值类型有关)。并非所有 cmdlet 都包含此类详细信息。但是,大多数 cmdlet 都包含各参数的某些设置,如表 1 中所述。

表 1   参数设置

设置 说明

必需?

此设置表明不提供参数时 cmdlet 是否会运行。Required? 设置为 True 时,如果命令行上未提供参数,则 Exchange 命令行管理程序将提示您输入该值。

位置?

此设置指示是否必须将参数名放置在参数值之前。Position? 设置为 Named 时,必须提供参数名。

Position? 设置为整数时,则不必提供名称,仅值是必须提供的。

默认值

此设置表明不提供其他值时此参数的默认值。

接受管道输入?

此设置指示参数是否可接受其他 cmdlet 通过管道的输入作为其值。

接受通配符?

此设置指示参数的值是否可包含通配符并可与多个对象匹配。

布尔参数

在 Exchange 命令行管理程序中使用“布尔参数”来确定功能或选项是启用的 ($True),还是禁用的 ($False)。分配给布尔参数的值存储在正在修改的对象的配置中。向布尔参数提供值时,必须使用值 $True 1,或者是 $False 0。美元符号 ($) 必须包括在 $True$False 中。您可能注意到某些命令会在布尔参数名与布尔值之间插入冒号 (:)。在布尔参数中,此冒号是可选的。下面的示例禁用接收连接器“Contoso.com”:

Set-ReceiveConnector "Contoso.com" -Enabled $False

切换参数

在 Exchange 命令行管理程序中使用“切换参数”设置立即执行命令的状态。不在命令之间保存此状态。切换参数类似于布尔参数,但两个具有不同的用途且需要不同的语法。切换参数不需要值。默认情况下,如果在命令行上指定切换参数而没有指定值,则该参数的计算结果为 $True。像布尔参数一样,切换参数仅接受 $True 1,或者是 $False 0。美元符号 ($) 必须包括在 $True$False 中。与布尔参数不同,必须在切换参数名和切换值之间包含一个冒号 (:)。下面的第一个示例指示 Exchange 命令行管理程序在使 EdgeSync 同步启动前显示确认提示。第二个示例指示 Exchange 命令行管理程序不要在删除接收连接器“Contoso.com”前显示确认提示:

Start-EdgeSynchronization -Confirm
Remove-ReceiveConnector "Contoso.com" -Confirm:$False

公用参数

“公用参数”是由 Exchange 命令行管理程序自动添加到所有命令中的参数。这些参数执行与运行这些参数的命令一起使用或由这些命令使用的功能。表 2 列出了在 Exchange 命令行管理程序中可用的所有公用参数。还可将其他三个参数 WhatIfConfirmValidateOnly 添加到 cmdlet 中。有关其他参数的详细信息,请参阅 WhatIf、Confirm 和 ValidateOnly 参数

表 2   Exchange 命令行管理程序中的公用参数

参数名 必需 类型 说明

Verbose

可选

System.Boolean

此参数指示命令提供关于操作的详细信息。

note注意:
大多数 Get cmdlet 在运行时仅返回摘要信息。若要在运行命令时通知 Get cmdlet 返回详细信息,请将命令管道传输至 Format-List cmdlet 中。
有关管道传输的详细信息,请参阅管道传输。有关命令输出的详细信息,请参阅使用命令输出

Debug

可选

System.Boolean

此参数指示要求提供关于操作的程序员级别详细信息的命令。

ErrorAction

可选

System.Enum

此参数控制出错时命令的行为。值如下:

  • NotifyContinue,这是默认值

  • NotifyStop

  • SilentContinue

  • SilentStop

  • Inquire,询问用户要执行的操作

ErrorVariable

可选

System.String

此参数指定命令存储在处理期间遇到的错误所使用的变量名称。除填充 $ERROR 外,还要填充此变量。

OutVariable

可选

System.String

此参数指定命令对作为该命令输出的对象使用的变量名称。这相当于将命令管道传输至 Set-Variable <name> -Passthru:$true