Синтаксис командлетов ExchangeExchange cmdlet syntax

Ссылки на разделы Exchange командлет использовать стандартный метод, который описывает основные аспекты по командлету. Например:Exchange cmdlet reference topics use a standardized method that describes key aspects about the cmdlet. For example:

  • Параметры, доступные в командлете.Parameters that are available on the cmdlet.

  • Значения, которые принимает каждый параметр.Values that each parameter accepts.

  • Параметры, которые могут использоваться вместе, а параметры, которые необходимо использовать по отдельности.Parameters that can be used together, and parameters that need to be used separately.

В данной статье описываются эти соглашения, а также синтаксис, необходимый для выполнения команд в Exchange PowerShell.This topic explains these conventions, and also the syntax that's required to run commands in Exchange PowerShell.

Соглашения о командах в Exchange PowerShellCommand conventions in Exchange PowerShell

Справка по Exchange PowerShell следует соглашениям, указывающим обязательные и необязательные параметры, а также способы ввода параметров и значений при выполнении команды. Эти соглашения о командах перечислены в представленной ниже таблице.Exchange PowerShell help follows conventions that indicate what's required or optional, and how to enter parameters and values when you run a command. These command conventions are listed in the following table.

СимволSymbol ОписаниеDescription
- Дефис указывает параметр. Например -Identity.A hyphen indicates a parameter. For example, -Identity.
< > Угловые скобки обозначают возможные значения для параметра. Например -Location <ServerName> или "-включено < $trueAngle brackets indicate the possible values for a parameter. For example, -Location <ServerName> or `-Enabled <$true
[ ] Квадратные скобки указывают необязательные параметры и их значения. Например [-WhatIf <SwitchParameter>]. Значение параметра пар, не заключенные в квадратные скобки являются обязательными.Square brackets indicate optional parameters and their values. For example, [-WhatIf <SwitchParameter>]. Parameter-value pairs that aren't enclosed in square brackets are required.
| Символы канала в значения параметров означают выбрать между значениями. Например, - включено <$true | $false> указывает параметр Enabled может иметь значение $true или $false.Pipe symbols in parameter values indicate a choice between values. For example, -Enabled <$true | $false> indicates the Enabled parameter can have the value $true or $false.

Эти соглашения о командах помогут вам понять структуру команды. При выполнении командлетов в Exchange PowerShell указанные выше символы (за исключением дефиса, обозначающего параметр) используются не так, как показано в таблице.These command conventions help you understand how a command is constructed. With the exception of the hyphen that indicates a parameter, you don't use these symbols as they're described in the table when you run cmdlets in Exchange PowerShell.

Наборы параметров в Exchange PowerShellParameter sets in Exchange PowerShell

Наборы параметров представляют собой группы параметров, которые можно использовать вместе в одной команде. Параметры, входящие в разные наборы параметров, являются взаимоисключающими (их невозможно использовать вместе в одной команде).Parameter sets are groups of parameters that can be used with each other in the same command. Parameters that exist different parameter sets are mutually exclusive (they can't be used together in the same command).

У многих командлетов есть только один набор параметров, то есть все доступные параметры можно использовать одновременно. У других командлетов есть несколько наборов параметров. Это означает, что некоторые параметры выполняют функции, несовместимые с другими параметрами. Например, для командлета New-SystemMessage доступны следующие наборы параметров:Many cmdlets have only one parameter set, which means that all available parameters can be used with each other. Other cmdlets have several parameter sets, which indicates some parameters perform functions that are incompatible with other parameters. For example, suppose the following parameter sets are available on the New-SystemMessage cmdlet:

New-SystemMessage -DsnCode <EnhancedStatusCode> -Internal <$true | $false> -Language <CultureInfo> -Text <String> [-Confirm [<SwitchParameter>]] [-DomainController <Fqdn>] [-WhatIf [<SwitchParameter>]]  <COMMON PARAMETERS>

New-SystemMessage -Language <CultureInfo> -QuotaMessageType <WarningMailboxUnlimitedSize | WarningPublicFolderUnlimitedSize | WarningMailbox | WarningPublicFolder | ProhibitSendMailbox | ProhibitPostPublicFolder | ProhibitSendReceiveMailBox> -Text <String> [-Confirm [<SwitchParameter>]] [-DomainController <Fqdn>] [-WhatIf [<SwitchParameter>]] <COMMON PARAMETERS>

У этого командлета есть два отдельных набора параметров. Это означает, что вы можете использовать в одной команде следующие параметры:This cmdlet has two separate parameter sets. This indicates that you can use these parameters together in the same command:

  • DsnCodeDsnCode

  • ВнутреннийInternal

  • LanguageLanguage

  • TextText

  • ConfirmConfirm

  • DomainControllerDomainController

  • WhatIfWhatIf

Кроме того, вы можете использовать в одной команде следующие параметры:And you can use these parameters together in the same command:

  • LanguageLanguage

  • QuotaMessageTypeQuotaMessageType

  • TextText

  • ConfirmConfirm

  • DomainControllerDomainController

  • WhatIfWhatIf

Однако не удастся использовать в одной команде следующие параметры:But you can't use these parameters together in the same command:

  • DsnCode и QuotaMessageType.DsnCode and QuotaMessageType.

  • Внутренний и QuotaMessageType.Internal and QuotaMessageType.

<COMMON PARAMETERS> Обозначает командлет поддерживает основные параметры Windows PowerShell, доступные на практически у любого командлета (например, отладки). Общие параметры можно использовать вместе с параметрами из любой набор параметров. Для получения дополнительных сведений см about_CommonParameters.The <COMMON PARAMETERS> entry indicates the cmdlet supports the basic Windows PowerShell parameters that are available on virtually any cmdlet (for example, Debug). You can use common parameters with parameters from any parameter set. For more information, see about_CommonParameters.

Кавычки в Exchange PowerShellQuotation marks in Exchange PowerShell

В Exchange PowerShell можно заключать значения параметров, содержащие пробелы, в одиночные ( ' ) или двойные ( " ) кавычки. Например, следующие команды работают одинаковым образом:In Exchange PowerShell, you use single quotation marks ( ' ) or double quotation marks ( " ) to enclose parameter values that contain spaces. For example, the following commands behave the same:

  • Get-ReceiveConnector -Identity "Contoso Receive Connector"

  • Get-ReceiveConnector -Identity 'Contoso Receive Connector'

Если вы не должно заключаться Contoso Receive Connector в кавычках, пытается считать каждое слово новый аргумент Exchange PowerShell, а команда завершится с ошибкой. В этом примере вы получите ошибка, которая выглядит следующим образом:If you don't enclose the value Contoso Receive Connector in quotes, Exchange PowerShell tries to treat each word as a new argument, and the command will fail. In this example, you'll receive an error that looks like this:

A positional parameter cannot be found that accepts argument 'Receive'

Если значение содержит переменные, вам необходимо тщательно выбирайте между одинарные и двойные кавычки. Предположим, что у вас есть переменной с именем $Server , который имеет значение Mailbox01.If the value contains variables, you need choose carefully between single quotes and double quotes. For example, suppose you have a variable named $Server that has the value Mailbox01.

  • Двойные кавычки: переменные, заменяются их значения. Входной «Пример $Server» результатов в выходных данных Mailbox01 Example.Double quotation marks: Variables are substituted with their values. The input "$Server Example" results in the output Mailbox01 Example.

  • Одинарные кавычки: переменные, которые обрабатываются. Входной «Пример $Server» результатов в выходных данных $Server Example.Single quotation marks: Variables are treated literally. The input '$Server Example' results in the output $Server Example.

Дополнительные сведения о переменных см. в разделах User-Defined Variables и Shell Variables.For more information about variables, see User-Defined Variables and Shell Variables.

Escape-символы в Exchange PowerShellEscape characters in Exchange PowerShell

На любом языке программирования escape-знака, используемый для идентификации специальные символы практически, а не на их нормальной работы на этом языке. В Exchange PowerShell при заключите строку текста в двойные кавычки, escape-последовательности символов является символ escape-последовательности Обратная кавычка ( ` ).In any programming language, an escape character is used to identify special characters literally, and not by their normal function in that language. In Exchange PowerShell, when you enclose a text string in double quotation marks, the escape character is the back quotation mark escape character ( ` ).

Например, если вы хотите, чтобы выходные данные The price is $23, введите значение «— это цена `$23». Escape-последовательности символов является обязательным, поскольку знак доллара ($) определяет переменные в Exchange PowerShell.For example, if you want the output The price is $23, enter the value "The price is `$23". The escape character is required because the dollar sign character ( $ ) defines variables in Exchange PowerShell.

Если заключить строку в одинарные кавычки только специального символа, необходимую для выполнения является одинарные кавычки сам символ, где требуется два одинарные кавычки ("«).If you enclose the string in single quotation marks, the only special character you need to worry about is the single quotation mark character itself, which requires two single quotation marks ( '' ).

Например, если вы хотите, чтобы выходные данные Don't confuse two single quotation marks with a double quotation mark!, введите значение "Don'' t следует путать две одинарные кавычки двойная кавычка!".For example, if you want the output Don't confuse two single quotation marks with a double quotation mark!, enter the value 'Don''t confuse two single quotation marks with a double quotation mark!'.

Операторы команд в Exchange PowerShellCommand operators in Exchange PowerShell

В приведенной ниже таблице показаны допустимые операторы, которые можно использовать в команде Exchange. Некоторые из этих символов также описываются в разделе Соглашения о командах в Exchange PowerShell ранее в этой статье. Тем не менее значения этих символов меняются при их использовании в качестве операторов командной строки. Например, знак "минус", обозначающий параметр, также можно использовать в команде как математический оператор.The following table shows the valid operators that you can use in an Exchange command. Some of these symbols were also described in the earlier Command conventions in Exchange PowerShell section. However, these symbols have different meanings when they're used on the command line as operators. For example, the minus sign that's used to indicate a parameter can also be used in a command as a mathematical operator.

ОператорOperator ОписаниеDescription
= Знак равенства используется в качестве символа присвоения. Значение, находящееся с правой стороны знака равенства, присваивается переменной, расположенной с левой стороны знака равенства. Следующие знаки также являются символами присвоения:The equal sign is used as an assignment character. The value on the right side of the equal sign is assigned to the variable on the left side of the equal sign. The following characters are also assignment characters:
+=: Добавление значения справа от знака равенства текущее значение, которое содержится в переменной в левой части равенства.+=: Add the value on the right side of the equal sign to the current value that's contained in the variable on the left side of the equal sign.
-=: Вычитание значение справа от знака равенства текущее значение, которое содержится в переменной в левой части равенства.-=: Subtract the value on the right side of the equal sign from the current value that's contained in the variable on the left side of the equal sign.
• ** * **: Умножения текущее значение переменной в левой части равенства по значению, которое задано справа от знака равенства.*=: Multiply the current value of the variable on the left side of the equal sign by the value that's specified on the right side of the equal sign.
/=: Деления текущее значение переменной в левой части равенства по значению, которое задано справа от знака равенства./=: Divide the current value of the variable on the left side of the equal sign by the value that's specified on the right side of the equal sign.
%=: Изменение текущее значение переменной в левой части равенства по значению, которое задано справа от знака равенства.%=: Modify the current value of the variable on the left side of the equal sign by the value that's specified on the right side of the equal sign.
: Двоеточие используется для разделения имя параметра значения этого параметра. Например -Enabled:$True. С помощью двоеточие является необязательным для всех типов параметров, за исключением параметра-переключателя. Дополнительные сведения о параметрах переключатель см.A colon can be used to separate a parameter's name from the parameter's value. For example, -Enabled:$True. Using a colon is optional with all parameter types except switch parameters. For more information about switch parameters, see Parameters.
! Восклицательный знак — это логический оператор NOT. Если он используется вместе со знаком равенства ( = ), это сочетание означает "не равно". The exclamation point is a logical NOT operator. When it is used with the equal ( = ) sign, the combined pair means "not equal to."
[ ] Чтобы задать значение индекса положения массива используются скобки. Значения индекса: смещения, начинающиеся с нуля. Например $Red[9] ссылается на десятой позиции индекса в массиве $Red.Brackets are used to specify the index value of an array position. Index values are offsets that start at zero. For example, $Red[9] refers to the tenth index position in the array, $Red.
Скобки также можно использовать для присвоения переменной типа (например, $A=[XML] "<Test><A>value</A></Test>"). Доступны следующие типы переменных: Array, Bool, Byte, Char, Char[], Decimal, Double, Float, Int, Int[], Long, Long[], RegEx, Single, ScriptBlock, String, Type, иXML.Brackets can also be used to assign a type to a variable (for example, $A=[XML] "<Test><A>value</A></Test>"). The following variable types are available: Array, Bool, Byte, Char, Char[], Decimal, Double, Float, Int, Int[], Long, Long[], RegEx, Single, ScriptBlock, String, Type, and XML.
{ } Скобки используются для включения выражения в команду. Например, Get-Process | где {$_. HandleCount - gt 400}Braces are used to include an expression in a command. For example, Get-Process | Where {$_.HandleCount -gt 400}
| Вертикальной черты используется, если результат в другой командлет передает полученные одного командлета. Например, Get-Mailbox-Server SRV1 | Set-Mailbox - ProhibitSendQuota 2 ГБ.The pipe symbol is used when one cmdlet pipes a result to another cmdlet. For example, Get-Mailbox -Server SRV1 | Set-Mailbox -ProhibitSendQuota 2GB.
> Правая угловая скобка используется для отправки выходных данных команды в файл и содержимое файла, будут перезаписаны. Например Get-TransportRulePredicate > "C:\My Documents\Output.txt".The right-angle bracket is used to send the output of a command to a file, and the contents of the file are overwritten. For example, Get-TransportRulePredicate > "C:\My Documents\Output.txt".
>> Двойные правые угловые скобки используются для добавления выходных данных команды в существующий файл. Если файл не существует, создается новый файл. Например Get-TransportRulePredicate >> "C:\My Documents\Output.txt".Double right-angle brackets are used to append the output of a command to an existing file. If the file doesn't exist, a new file is created. For example, Get-TransportRulePredicate >> "C:\My Documents\Output.txt".
" В двойные кавычки заключаются текстовые строки, содержащие пробелы.Double quotation marks are used to enclose text strings that contains spaces.
$ Знак доллара указывает переменную. Например $Blue = 10 назначает значение 10 в переменную $Blue.A dollar sign indicates a variable. For example, $Blue = 10 assigns the value 10 to the variable $Blue.
@ Знак @ указывает на связанный массив. Дополнительные сведения см. в разделе Arrays.The @ symbol references an associative array. For more information, see Arrays.
$( )$( ) Знак доллара ( $ ) круглые скобки указывает команду подстановки. Можно использовать команду подстановки флажок использовать выходные данные одной команды в качестве аргумента в другой команды. Например Get-ChildItem $(Read-Host -Prompt "Enter FileName: ").A dollar sign ( $ ) with parentheses indicates command substitution. You can use command substitution when you want to use the output of one command as an argument in another command. For example, Get-ChildItem $(Read-Host -Prompt "Enter FileName: ").
.. Периоды Double указывают диапазон значений. Например, если массив содержит несколько индексов, можно вернуть значения всех индексов между второй и пятый индексов, выполнив команду: $Blue[2..5].Double-periods indicate a value range. For example, if an array contains several indexes, you can return the values of all indexes between the second and fifth indexes by running the command: $Blue[2..5].
+ Оператор + складывает два значения. Например, 6 + 6 равно 12. The + operator adds two values together. For example, 6 + 6 equals 12.
- - Оператор Вычитает одно значение из другого значения (, например 12 - 6 равняется 6) или показывает отрицательное значение (например, -6 * 6 равняется -36).The - operator subtracts one value from another value (for example, 12 - 6 equals 6) or indicates a negative number (for example, -6 * 6 equals -36).
\* Можно использовать подстановочный знак для сопоставления строк (например, Get-User | Where-Object {$_. Отдел-like «Продажи *»}), умножьте числовых значений (, например 6 * 6 равняется 36), или повторяет значение строки указанное число раз (, например "Test" * 3 равняется TestTestTest).You can use the wildcard character to match strings (for example, Get-User | Where-Object {$_.Department -like 'Sales*'}), multiply numeric values (for example, 6 * 6 equals 36), or repeat the string value the specified number of times (for example, "Test" * 3 equals TestTestTest).
/ Оператор / делит одно значение на другое. Например, выражение 6 / 6 равно 1. The / operator divides one value by another. For example, 6 / 6 equals 1.
% При вычислениях оператор % возвращает остаток от деления. Например, выражение 6 % 4 равно 2. In a numerical evaluation, the % operator returns the remainder from a division operator. For example, 6 % 4 equals 2.
В конвейере, знак процента ( % ) — это сокращение для командлета ForEach-Object . Например, c:\MyFile.csv Import-Csv | ForEach-Object {$ Set-Mailbox_. IDENTITY — имя $_. Имя} — то же, что Import-Csv c:\MyFile.csv | % {$ Set-Mailbox_. IDENTITY — имя $_. Имя}. Для получения дополнительных сведений см Pipelining.In a pipeline, the percent character ( % ) is shorthand for the ForEach-Object cmdlet. For example, Import-Csv c:\MyFile.csv | ForEach-Object {Set-Mailbox $_.Identity -Name $_.Name} is the same as Import-Csv c:\MyFile.csv | % {Set-Mailbox $_.Identity -Name $_.Name}. For more information, see Pipelining.
? Вопросительный знак ( **** ?) — это сокращение для командлет Where-Object . Например, Get-Alias | Where-Object {$_. Определение - eq «Clear-узел»} совпадает с Get-Alias | ? {$_. Определение - eq «Clear узел»}The question mark character ( ? ) is shorthand for the Where-Object cmdlet. For example, Get-Alias | Where-Object {$_.Definition -eq "Clear-Host"} is the same as Get-Alias | ? {$_.Definition -eq "Clear-Host"}